Я запрашиваю браузер lynx с URL-адресом и получаю вывод с терминала, но проблема в том, что вывод поступает с перуанского веб-сайта, а испанские символы неправильно отображаются на терминале. Я передаю флаги -assume_charset и -assume_unrec_charset вместе с моим вызовом URL-адреса, поэтому он должен заменить набор символов на тот, который я указываю, если веб-сайт не указывает его. И для обоих этих параметров я пробовал латиницу 1, латиницу 3 и латиницу 4, и ни один из них не работает. Я хотел бы знать, как я могу решить эту проблему. Я использую модуль подпроцесса python и передаю запрос lynx в качестве параметра в subprocess.Popen(...), а затем читаю вывод из STDOUT. Мой код следующий:
import subprocess
def get_urlData(url):
cmd = "lynx -dump -nolist -notitle -assume_charset =\"ISO-8859-1\" -assume_unrec_charset=\"ISO-8859-1\" "+url
lynx = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
file_data = lynx.stdout.read()
#file_data = file_data.decode('ISO-8859-1','replace')
return file_data
Когда я сохраняю возвращенные данные file_data в объекте и пытаюсь распечатать его на терминале Python, следующая часть вывода, которую я получаю, я включаю, чтобы прояснить проблему:
Per\xedodo: Periodo de Gobierno 2006-2011. Законодательная власть: Primera\n Legislatura Ordinaria 2010\n N\xfamero: 04903/2010-CR Fecha Presentaciķn: 13.07.2011\n
Сторонник: Конгресс\n
Grupo Parlamentario: Multipartidario\n
T\xedtulo: LEY QUE EXTINGUE LA DEUDA TRIBUTARIA PROVENIENTE DE LA\n ВАЖНОĶN Y/O VENTA DE COMBUSTIBLE TURBO A1\n
ясно, что символ ķ должен быть каким-то другим испанским символом, но я не знаю, как заставить его отображаться на моем терминале. Любая помощь будет оценена по достоинству.