本文记录了一些学习Python HTMLParser时的一些心得,基于个人理解,如有错误欢迎指正:
资料:https://docs.python.org/3/library/html.parser.html
HTML属于XML的子集,但是格式不像XML这么严格,不能用标准的 DOM 或 SAX 来解析 HTML
python中自带了一个类 HTMLParser
用来解析HTML
我们可以看到,HTMLParser里面很多方法都是空的,如果需要使用,需要重写方法
# Overridable -- finish processing of start+end tag: <tag.../>
def handle_startendtag(self, tag, attrs):
self.handle_starttag(tag, attrs)
self.handle_endtag(tag)
# Overridable -- handle start tag
def handle_starttag(self, tag, attrs):
pass
# Overridable -- handle end tag
def handle_endtag(self, tag):
pass
# Overridable -- handle data
def handle_data(self, data):
pass
进行简单的方法重写:
#解析属性
def handle_starttag(self, tag, attrs):
print("Start tag:", tag)