我寫了一個python腳本來處理大量下載的網頁HTML(120K頁)。我需要解析它們並從中提取一些信息。我嘗試使用BeautifulSoup,它很簡單直觀,但它似乎運行得非常慢。因爲這是必須在弱機器上運行(在亞馬遜上)的速度,這一點非常重要。 python中是否有一個HTML/XML解析器,其工作速度比BeautifulSoup快得多?或者我必須求助於正則表達式解析..一個快速的Python HTML解析器
9
A
回答
13
LXML是一個快速的XML和HTML解析器:http://lxml.de/parsing.html
0
嘗試:ElementTree可能會更快,但我不知道。
xml.etree.ElementTree import ElementTree
+0
我也會提出這個建議......雖然我沒有任何數據可以支持與BeautifulSoup – inspectorG4dget 2012-03-12 16:44:25
3
SAX風格的解析器可以比基於DOM的更快。你的代碼被賦予了一系列元素,你必須推斷(並可能存儲)他們的關係;但你只需要保持儘可能多的狀態以獲得你想要的數據。相比之下,DOM風格的解析器需要構建可導航的對象模型,這需要耗費時間(和內存),這可能不需要花費。
Python有這樣的HTML解析器;它被稱爲HTMLParser
(在Python 3中爲html.parser
)。根據識別要提取的數據的難度,然而,要成功解決這種解析問題可能非常困難。如果你要發佈一個示例文件並且告知你想從中提取哪些數據,我可能會採取一些措施。
相關問題
- 1. 真正快速的C++ html解析器
- 2. 快速,輕量級HTML解析器C++
- 3. 快速解析python中的一個頁面的鏈接
- 4. html解析器python
- 5. 快速解析(Tableview)
- 6. Python快速字符串解析,操作
- 7. 用於Matlab的快速JSON解析器
- 8. 快速解析器規則順序
- 9. JSON快速解析3
- 10. 快速解析內容PARAMS
- 11. 快速解析字典
- 12. Java.net當你從網上解析html時,哪個速度最快?
- 13. Python html解析
- 14. Python的HTML解析
- 15. Android HTML Jsoup解析速度
- 16. Python 3中的HTML解析器
- 17. 解析文件的快速方法?
- 18. 快速解析簡單的大文件
- 19. Python:解析wordpress HTML
- 20. 解析HTML與Python
- 21. 快速解析json到一個數組3
- 22. GAE的HTML解析器
- 23. HTML解析器
- 24. 用Python解析更快
- 25. Microsoft.Data.Schema.ScriptDom解析器的速度
- 26. 的Python - BeautifulSoup - HTML解析
- 27. Python的 - 解析HTML類
- 28. Python 3 - HTML解析器 - 空屬性
- 29. 未找到python html解析器數據
- 30. 解析陣列PARAMS在快速
[Keep the pony away ...](http://stackoverflow.com/a/1732454/554546) – 2012-03-12 16:28:50
我沒有在Python中解析HTML的經驗,但[這裏](http://blog.ianbicking .org/2008/03/30/python-html-parser-performance /)是您可能會發現有用的一些基準測試結果。 – 2012-03-12 16:30:28
[正則表達式和HTML ==失敗](http://stackoverflow.com/a/1732454/554546) – 2012-03-12 16:30:33