UnicodeDecodeError:'charmap'编解码器无法解码位置261060上的字节0x81:字符映射到<undefined>

时间:2019-10-04 14:13:19

标签: python html unicode utf-8 beautifulsoup

我目前正在尝试从公司客户提供的HTML文件中提取href(电子邮件)。他们向我发送了6个月的数据,但我无法从2个特定文件中提取电子邮件。无论我做什么,我每次都会收到相同的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 :(得分:0)

如注释中所建议,您只需添加encoding参数:

soup = bsoup((open(url, encoding="utf-8").read()))