UnicodeDecodeError: кодек 'charmap' не может декодировать байт 0x81 в позиции 261060: символ отображается на <undefined> - PullRequest
0 голосов
/ 04 октября 2019

В настоящее время я пытаюсь извлечь href (электронные письма) из файлов HTML, предоставленных клиентом моей компании. Они отправили мне данные за 6 месяцев, но я не могу извлечь электронные письма из двух конкретных файлов. Я продолжаю получать одно и то же UnicodeDecodeError каждый раз, независимо от того, что я пытаюсь. Согласно моему анализу, эти файлы кодируются в формате «utf-8». Я оставлю код ниже:

from bs4 import BeautifulSoup as bsoup

url = r"C:\Users\Maximiliano\Documents\enero.html"
soup = bsoup((open(url).read()))

data = [] 
for p in soup.find_all("a"):
    datos = p.get("href")
    if datos[0] != "m":
        pass
    else:
        data.append(datos)
print(data)

Я уже пытался добавить ".decode (" utf-8 ") после чтения, но он ничего не делает. Пожалуйста, помогите мне!

файл: https://gofile.io/?c=SFM1T3

1 Ответ

0 голосов
/ 04 октября 2019

Как предлагается в комментариях, вам просто нужно добавить параметр encoding:

soup = bsoup((open(url, encoding="utf-8").read()))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...