Tôi đang tìm kiếm một mô-đun phân tích cú pháp HTML cho Python có thể giúp tôi lấy các thẻ ở dạng danh sách / từ điển / đối tượng Python.
Nếu tôi có một tài liệu của mẫu:
<html>
<head>Heading</head>
<body attr1='val1'>
<div class='container'>
<div id='class'>Something here</div>
<div>Something else</div>
</div>
</body>
</html>
sau đó nó sẽ cho tôi một cách để truy cập các thẻ lồng nhau thông qua tên hoặc id của thẻ HTML để tôi có thể yêu cầu nó lấy nội dung / văn bản trong div
thẻ có class='container'
trong body
thẻ hoặc một cái gì đó tương tự.
Nếu bạn đã sử dụng tính năng "Kiểm tra phần tử" của Firefox (xem HTML), bạn sẽ biết rằng nó cung cấp cho bạn tất cả các thẻ theo cách lồng nhau đẹp như một cái cây.
Tôi thích một mô-đun tích hợp nhưng điều đó có thể đòi hỏi quá nhiều.
Tôi đã xem qua rất nhiều câu hỏi về Stack Overflow và một vài blog trên internet và hầu hết trong số họ đề xuất BeautifulSoup hoặc lxml hoặc HTMLParser nhưng một vài trong số đó chi tiết về chức năng và đơn giản là kết thúc như một cuộc tranh luận về việc cái nào nhanh hơn / hiệu quả hơn.