使用lxml解析xml和html页面并在python中请求包

时间:2016-11-06 07:47:50

标签: python parsing encoding python-requests lxml

我一直在尝试使用lxml解析xml和html页面并在python中请求包。我为此目的使用以下代码:

在python中:

import requests
import lxml.etree
url = ""
req = requests.get(url)
tree = html.fromstring(req.content)
root = tree.xpath('')
for item in root:
     print(item.text)

此代码工作正常,但有些网页无法正确显示其内容,需要设置编码utf-8但我不知道如何在此代码中添加集编码

1 个答案:

答案 0 :(得分:0)

requests自动解码服务器中的内容。

要了解的重要事项:

r.content - 包含尚未解码的响应内容

r.encoding - 包含有关响应内容编码的信息

r.text - 根据official doc,它已经解码为r.content的版本

遵循unicode标准,我习惯r.text,但您仍然可以使用

手动解码内容
r.content.decode(r.encoding)

希望它有所帮助。