美丽汤+ Python的编码问题

时间:2019-07-29 20:23:20

标签: python parsing beautifulsoup

我一直在阅读docs中的Beautiful Soup编码,以获取具有特殊字符的html进行解析。但是那里的用例与我的不匹配。

将HTML <p>Kimi Räikkönen</p>抓取为Kimi Räikkönen后返回了HTML,我的应用无法处理此问题。文档指示了当实际标记中包含unicode(我的没有)时(即<p>Sacr\xc3\xa9 bleu!</p><p>Sacré bleu!</p>

)如何转换内容。

奇怪的是,当我输入soup.original_encoding时,即使内容正常,我总会得到None

我已经尝试了文档中的所有示例以及此处的其他问题,但到目前为止都没有奏效。我同时使用Beatiful Soup作为刮板和解析器。

对于如何处理此问题,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

这不是美丽的汤问题,而是requests的问题。

page = requests.get("https://www.formula1.com/en/drivers/kimi-raikkonen.html")

这是我的刮板中的第一行,并且未返回正确的编码。该解决方案可能被认为是骇人听闻的,但我只是添加了以下内容来解决此问题:

page.encoding = 'utf-8'