Ответы пользователя по тегу Python
  • Как перекодировать windows-1251 в utf-8 при парсинге?

    @plyk Автор вопроса
    Оказалось что библиотека Requests кодирует данные в кодировку Latin-1(ISO-8859-1), сайт же отправляет данные с кодировкой windows-1251. Получалось что библиотека перекодировала данные сайта в другую кодировку.
    Решил так:
    sourse = requests.get('url')
    sourse.encoding='windows-1251' # Теперь requests отдаёт данные в кодировке windows-1251 которая уже нормально читается

    В принципе можно остаться на этой кодировке если при записи в файл указать encoding='utf-8'
    Ну если прям сильно хочется перекодировать в utf-8, можно раскодировать текст в utf-8 а потом закодировать в него
    # if text is windows-1251
    text = '123 asdasd 55f'
    text = encode('utf-8').decode('utf-8')
    Ответ написан
    1 комментарий