使用Python解析HTML我正在寻找一个用于Python的HTMLParser模块,它可以帮助我以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带标签class='container'包含在body标签或者类似的东西。如果您使用了Firefox的“检查元素”功能(查看HTML),您就会知道它以一种很好的嵌套方式给出了所有的标记,就像树一样。我想要一个内置模块,但这可能要求太多了。我在Stack溢出网站上遇到了很多问题,互联网上也有几个博客,其中大多数都建议BeautifulSoup、lxml或HTMLParser,但这些问题中很少有详细说明功能的,只是讨论了哪一个更快/更有效。
3 回答

BIG阳
TA贡献1859条经验 获得超6个赞
这样,我基本上可以要求它给我div标记中的内容/文本,包含在body标记中的class=‘容器’,或者类似的东西。
try: from BeautifulSoup import BeautifulSoupexcept ImportError: from bs4 import BeautifulSouphtml = #the HTML code you've written aboveparsed_html = BeautifulSoup(html)print parsed_html.body.find('div', attrs={'class':'container'}).text
添加回答
举报
0/150
提交
取消