2013-01-12 62 views
1

我錯過了什麼 - lxml可以用於抓取網頁,對嗎?我的意思是,即使是那些沒有完美的HTML?我正在使用BeautifulSoup,但我希望更快。lxml:將網頁源代碼轉換爲元素樹以進行搜索

我發誓我讀了文檔,但我只是沒有看到如何將網頁源代碼轉換爲樹。我讀過的每一個內容都是關於從頭開始創建你的樹,一次一個元素。

我做

from lxml import etree 

url = urllib2.urlopen(url) 
source = url.read() 

然後呢?順便說一下,如果有幫助,我可以將源代碼轉換爲unicode。

+0

將HTML轉換爲元素樹意味着解析它。也許這是你應該在文檔中尋找的單詞? –

回答

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)) 

此外,您可能希望去hereherehere得到別人如何利用封裝的感覺。

相關問題