您的位置:首页 > 编程语言 > Python开发

python提取html特定标签的特定数据

2010-10-03 00:36 597 查看
1 #!/usr/bin/env python
2 from sgmllib import SGMLParser
3 s = """
4 <html>
5 <head>what's in</head>
6 <td> hello
7 <td> table1 blahblah </td>
8 <td> table </td>
9 </td>
ok the end blah
</html>
"""
class Parse(SGMLParser):
def reset(self):
self.found_td = 0
SGMLParser.reset(self)
def start_td(self, attrs):
self.found_td += 1
def end_td(self):
self.found_td -= 1
def handle_data(self, text):
if self.found_td > 0:
print 'Data: %s' % text

p = Parse()
p.feed(s)每个标签设一个标记,然后在handle_date里面判断读取

假如要处理<title>Hello world!</title>

碰到<title>的时候,title的标记由0变1;碰到数据的时候,验证title的标记的值,如果大于0则说明这是title的数据,可以提取出来;碰到</title>的时候,该标记由1变0,再碰到数据便可以识别出这不是title。

参考: python怎样提取html特定标签的特定数据?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: