我正在寻找Python的HTML解析器模块,可以帮助我以Python列表/字典/对象的形式获取标记。
如果我有以下格式的文件:
<html>
<head>Heading</head>
<body attr1='val1'>
<div class='container'>
<div id='class'>Something here</div>
<div>Something else</div>
</div>
</body>
</html>
那么它应该给我一种方法来访问嵌套标签通过HTML标签的名称或id,这样我基本上可以要求它为我提供内容/文本在div
标签与body
标签中包含的class='container'
,或类似的东西。
如果您使用过Firefox的“Inspect element”功能(查看HTML),您就会知道它以一种漂亮的嵌套方式为您提供所有标记,就像树一样。
我更喜欢内置模块,但这可能要求有点太多。
我在Stack Overflow和互联网上的一些博客上看了很多问题,大多数人都建议使用BeautifulSoup或lxml或HTMLParser,但很少有人详细介绍了功能,并简单地结束了关于哪个更快/更有效的争论。