Tôi đã viết một tập lệnh python xử lý một lượng lớn các trang web tải xuống HTML (120 nghìn trang). Tôi cần phải phân tích chúng và trích xuất một số thông tin từ đó. Tôi đã thử sử dụng BeautifulSoup, dễ dàng và trực quan, nhưng dường như chạy siêu chậm. Vì đây là cái gì đó sẽ phải chạy thường xuyên trên một máy yếu (trên amazon) tốc độ là quan trọng. có một trình phân tích cú pháp HTML/XML trong python sẽ hoạt động nhanh hơn nhiều so với BeautifulSoup không? hoặc tôi phải nghỉ mát để phân tích cú pháp regex ..Trình phân tích cú pháp HTML python HTML nhanh
Trả lời
lxml là một xml nhanh và phân tích cú pháp html: http://lxml.de/parsing.html
thử: ElementTree có thể nhanh hơn, nhưng tôi không chắc chắn.
xml.etree.ElementTree import ElementTree
Tôi cũng sẽ đề xuất điều này ... mặc dù, tôi không có bất kỳ dữ liệu nào để hỗ trợ tỷ lệ hiệu suất của điều này so với BeautifulSoup – inspectorG4dget
SAX-phong cách phân tích cú pháp có thể nhanh hơn so với những người dựa trên DOM. Mã của bạn được cung cấp một luồng các phần tử và bạn phải phỏng đoán (và có thể lưu trữ) các mối quan hệ của chúng; nhưng bạn chỉ cần duy trì nhiều trạng thái như được yêu cầu để có được dữ liệu bạn muốn. Ngược lại, các trình phân tích cú pháp kiểu DOM cần phải xây dựng một mô hình đối tượng điều hướng, cần có thời gian (và bộ nhớ) mà có lẽ bạn không cần phải chi tiêu.
Python có trình phân tích cú pháp như vậy cho HTML; nó được gọi là HTMLParser
(html.parser
bằng Python 3). Tùy thuộc vào mức độ khó nhận biết dữ liệu bạn muốn trích xuất, tuy nhiên, có thể rất khó để thành công trong việc sắp xếp lại phân tích cú pháp đó. Nếu bạn đã đăng một tập tin ví dụ và thông tin những dữ liệu bạn muốn trích xuất từ nó, tôi có thể có thể mất một Whack.
- 1. Phân tích cú pháp HTML HTML
- 2. Trình phân tích cú pháp HTML
- 3. Phân tích html với trình phân tích cú pháp SAX
- 4. Phân tích cú pháp HTML giống như jquery bằng Python?
- 5. python, lxml và xpath - html bảng phân tích cú pháp
- 6. Phân tích cú pháp HTML với BeautifulSoup 4 và Python
- 7. Phân tích cú pháp thẻ html bằng Python
- 8. libxml2 Phân tích cú pháp HTML
- 9. Phân tích cú pháp HTML trong perl
- 10. BeautifulSoup HTML bảng phân tích cú pháp
- 11. Phân tích cú pháp HTML với Erlang
- 12. Lỗi phân tích cú pháp HTML
- 13. PHP tags phân tích cú pháp HTML
- 14. RUBY Nokogiri HTML HTML Phân tích cú pháp
- 15. Trình phân tích cú pháp HTML trên Node.js
- 16. Trình phân tích cú pháp DOM HTML .NET?
- 17. Trình phân tích cú pháp HTML cho GAE
- 18. Không thể phân tích cú pháp html sử dụng lxml XPath phân tích cú pháp
- 19. Cần trợ giúp cú pháp python lxml để phân tích cú pháp html
- 20. HTML Agility pack - các bảng phân tích cú pháp
- 21. Trình phân tích cú pháp SVG Python
- 22. Phân tích cú pháp html bằng cách sử dụng C
- 23. UIWebView đang tải chuỗi html được phân tích cú pháp
- 24. Phân tích cú pháp HTML từ một trang web
- 25. Phân tích cú pháp trang html hoàn chỉnh với jquery
- 26. Phân tích cú pháp cấu trúc lại thành HTML
- 27. chuỗi phân tích cú pháp html với jquery
- 28. HTML để phân tích cú pháp/script thực hiện lệnh
- 29. Phân tích cú pháp Bảng HTML với BeautifulSoup
- 30. Cách phân tích cú pháp tệp html bằng clojure?
[Giữ pony đi ...] (http://stackoverflow.com/a/1732454/554546) –
Tôi không có kinh nghiệm phân tích cú pháp HTML bằng Python, nhưng [ở đây] (http: //blog.ianbicking .org/2008/03/30/python-html-parser-performance /) là một số kết quả chuẩn mà bạn có thể thấy hữu ích. –
[thất bại regex và HTML ==] (http://stackoverflow.com/a/1732454/554546) –