• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

decode utf-8

Vlg

Green Team
02.11.2019
117
1
BIT
19
Hello, world! Эх, я даже не знаю как это все написать.
В предыдущем вопросе я узнал как вывести результат действий в cmd через python(
Python:
subprocess.check_output(['func']).decode('utf-8')
)
Я вызвал этот метод в python cmd (в IDLE этот метод отказывается работать и выдает ошибку WindowsError: [Error 6]) сам метод работает, но декодировать не может и выдает ошибку unicodedecodeerror: 'utf-8' codec can't decode byte 0xcd in position 3: invalid continuation byte.
Я сижу на windows xp использую Python 3.4 и 2.7 (в обеих версиях метод так себя ведет)
 
Решение
Вариант не красивый, но рабочий. А не существует ли вариант с двумя объектами в свойствах ярлыка. Я помню раньше вирусы так подкидывали. Вроде смотришь Хром да и запускается хром но вместе с ним запускается кейлоггер
cmd /c start calc & start notepad

Vlg

Green Team
02.11.2019
117
1
BIT
19
а просто subprocess.check_output(["func"]) ?
Ты точно понимаешь что происходит при вызове этого метода? Этот метод возвращает результат работы консоли закодированном в ютф8. Как я по твоему посмотрю на результат если он зашифрован?
 

Crazy Jack

Grey Team
08.07.2017
573
89
BIT
35
subprocess.png
 

Vlg

Green Team
02.11.2019
117
1
BIT
19
Вывод не "зашифрован", поэтому без decode() часто можно и обойтись. Смотря что с полученным выводом потом нужно делать.
В данном случае зашифрован

попробуй
Python:
subprocess.check_output(['func']).decode('utf-8'б errors='ignore')
Друг, твоя версия дала подсказку. Я запустил функцию с параметром игнор и вот что вышло, что ютф не расшифровал буквы кириллицы.
Так как кириллицу декодить?

Я тут посидел, подумал, посерфил интернет и пришел к выводу что консоль не обладает соответствующим алфавитом для расшифровки кириллицы или данный алфавит вызывается несколько иначе.
 

Vlg

Green Team
02.11.2019
117
1
BIT
19
Текст поддерживает, не выполняет CR LF, заменяет их на \r \n и текст идет одной строкой
Да,есть такое

Я попробовал написать этот метод с вызовом кириллицы(echo абвгде) на питоне 3.8.х на системе linux(Android kitkat)
Результат положительный. Ютф расшифровал кириллицу. Где хранится фаил с ютф алфавитом? Я его вручную обновлю.
 

Crazy Jack

Grey Team
08.07.2017
573
89
BIT
35
Я попробовал написать этот метод с вызовом кириллицы(echo абвгде) на питоне 3.8.х на системе linux(Android kitkat)
Результат положительный. Ютф расшифровал кириллицу. Где хранится фаил с ютф алфавитом? Я его вручную обновлю.

Для поддержки языка во всем мире.​

 

Vlg

Green Team
02.11.2019
117
1
BIT
19
И ещё один вопрос задам прямо здесь. У меня два питона стоят. Скрипт написан на питоне3. Я открываю папку нажимаю дважды на мой скрипт И... Он запускается в питон2 а мне нужен питоне3!
Я написал шапку
Python:
#! C:\Python34\python.exe
Но она не работает. Я весь на нервах. Что делат?
 

Pernat1y

Red Team
05.04.2018
1 443
135
BIT
0
И ещё один вопрос задам прямо здесь. У меня два питона стоят. Скрипт написан на питоне3. Я открываю папку нажимаю дважды на мой скрипт И... Он запускается в питон2 а мне нужен питоне3!
Я написал шапку
Python:
#! C:\Python34\python.exe
Но она не работает. Я весь на нервах. Что делат?
Виндовс открывает файл той программой, которая ассоциирована с данными расширением. Ей не важно, что там внутри написано.
 

Vlg

Green Team
02.11.2019
117
1
BIT
19
Виндовс открывает файл той программой, которая ассоциирована с данными расширением. Ей не важно, что там внутри написано.
Так. Тупая винда. А как в ярлыке в пункте "объект" внести путь к двоим файлам?
Идея такова: есть игра Морровинд и в ярлыке указан к нему путь "Объект: 'C:\...\morrowind.exe'"
Я хочу перед тем как она запустится, выполнился мой скрипт и только после его завершения запустится сама игра. "Объект: 'C:\Python34\...\script.py';'C:\...\morrowind.exe'"
Ну как-то так
 
Последнее редактирование:

curl

Active member
02.04.2021
28
0
BIT
0
ты открой файл одним питоном, а потом другим.
потом если нажмёшь пкм на файл у наведёш на "Открыть с помощью" предложит оба питона
 

Vlg

Green Team
02.11.2019
117
1
BIT
19
ты открой файл одним питоном, а потом другим.
потом если нажмёшь пкм на файл у наведёш на "Открыть с помощью" предложит оба питона
Кстати, ты молодец ,что обратил внимание на этот вариант. В пункте "Открыть с помощью" питоне3 нет. Есть строка "Edit with IDLE" но это для питона2 а для питона3 такой строки нет.
 

curl

Active member
02.04.2021
28
0
BIT
0
Кстати, ты молодец ,что обратил внимание на этот вариант. В пункте "Открыть с помощью" питоне3 нет. Есть строка "Edit with IDLE" но это для питона2 а для питона3 такой строки нет.
если открывать питонами этот тип файлов больше всего то появится и питон3
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!