我错过了什么 - lxml可用于抓取网页,对吧?我的意思是,即使那些没有完美的HTML?我正在使用BeautifulSoup,但我希望能有更快的东西。
我发誓我阅读了文档,但我还没有看到如何将网页源变成树。我读到的所有内容都谈到了从头开始创建树,一次一个元素。
我做
from lxml import etree
url = urllib2.urlopen(url)
source = url.read()
然后是什么?顺便说一下,如果有帮助的话,我可以把源变成unicode。
答案 0 :(得分:1)
您必须使用lxml.html
package,一个专用的lxml
软件包来处理HTML - 详细信息请参见Chapter 13 of the documentation。顺便提一下,该软件包基于lxml的HTML解析器。
<强>插图强>
from lxml import etree, html
htmltree = html.parse(url)
print(etree.tostring(htmltree, pretty_print=True))