Python中的html.parser
来源:互联网 发布:什么是淘宝店铺首页 编辑:程序博客网 时间:2024/05/22 09:48
class WebPageParser(html.parser.HTMLParser): def __init__(self, strict = False): super().__init__(strict) self.urls = [] self.data = [] self.is_href = False; def handle_starttag(self, tag, attrs): if tag == 'a': self.urls.extend([v for k , v in attrs if k == 'href']) self.is_href = True def handle_endtag(self, tag): print(tag) self.is_href = False def handle_startendtag(self, tag, attrs): print(tag, attrs) def handle_data(self, data): if self.is_href: self.data.append(data) def reset(self): super().reset() self.urls = [] self.data = [] self.is_href = False if __name__ == '__main__': webUrl = r"http://www.baidu.com" webPage = urllib.request.urlopen(webUrl) webPageParser = WebPageParser() webPageParser.feed(str(webPage.read())) print(webPageParser.urls) print(webPageParser.data)
该类的使用很简单,主要是要继承html.parser.HTMLParser,然后重载相对应的方法。
- Python中的html.parser
- [python]html.parser + Beautifulsoup+GBK编码
- HTML parser
- html parser
- HTML::Parser
- HTML Parser 源代码
- The Swing HTML Parser
- HTML::Parser 简单解释
- html parser 入门
- Java HTML Parser应用
- Html parser 访问好友
- HTML::Parser 简单解释
- android html parser
- HTML and URL Parser
- HTML and URL Parser
- HTML Parser 替代品 jsoup
- HTML Parser
- Jericho Html Parser初探
- EL 全名为Expression Language
- extern 解析
- 《JSP大学实用教程》 电子工业出版社 编著:耿祥义 张跃平 例子源代码
- 中缀表达式直接求值
- 五 STL算法(二)stl_algo.h
- Python中的html.parser
- cocos2d-x 显示遇到白框
- 线程函数的优先级
- 顺序栈的建立
- Java操作XML文件大合集(增删改查)
- libevent timer定时器
- snmptrap、snmpinform和snmptrapd的详细介绍及其用法
- 再看ADO.NET
- 一口一口吃掉Struts(九)——国际化问题(2)