如何解析html文件并使用Python获取标签之间的文本?

时间:2011-08-16 15:10:23

标签: python html-parsing

  

可能重复:
  Parsing HTML in Python

我在互联网上搜索了更多内容,以便使用Python获取标签之间的文本。你能解释一下吗?

2 个答案:

答案 0 :(得分:2)

以下是使用BeautifulSoup解析HTML的示例:

from BeautifulSoup import BeautifulSoup
soup = BeautifulSoup("""<html><body>
                        <div id="a" class="c1">
                            We want to get this
                        </div>
                        <div id="b">
                            We don't want to get this
                        </div></body></html>""")
print soup('div', id='a').text

此输出

We want to get this

答案 1 :(得分:-1)

上面评论中链接中提供的htmlparser可能是更强大的方法。但是,如果您在特定标签之间有一些简单的内容,则可以使用regular expressions

import re
html = '<html><body><div id='blah-content'>Blah</div><div id='content-i-want'>good stuff</div></body></html>'
m = re.match(r'.*<div.*id=\'content-i-want\'.*>(.*?)</div>', html)
if m:
    print m.group(1) # Should print 'good stuff'