我尝试使用此代码解析一些页面:
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">На доске на­пи­са
如何将这些符号转换为普通文本?谢谢