Python + lxml + etree编码问题

时间:2017-07-05 18:00:06

标签: python encoding lxml elementtree

我尝试使用此代码解析一些页面:

import urllib.request
import requests
from lxml import etree

s = requests.session()
s.headers.update({
     'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) 
Gecko/20100101 Firefox/45.0'
})
results = open("res.txt", "w")
for i in range(510077, 2780673):
    results = open("res.txt", "a")
    print(i)
    url = "url" + str(i) + "&print=true"
try:
    content = s.get(url).text
    tree = etree.HTML(content)
    a = str(tree.xpath("//*[@class='prob_nums']")[0].text)
    b = etree.tostring(tree.xpath("//*[@class='pbody']")[0])
    c = etree.tostring(tree.xpath("//*[@class='nobreak solution']")[0])
    results.writelines("%s    %s    %s" % (a, b, c))
    results.close()
except Exception:
    print("error")

但输出有问题: (片段)

 <p class="left_margin">&#1053;&#1072; &#1076;&#1086;&#1089;&#1082;&#1077; &#1085;&#1072;&#173;&#1087;&#1080;&#173;&#1089;&#1072;

如何将这些符号转换为普通文本?谢谢

0 个答案:

没有答案