说明
1、htmlparser为处理html文件提供了方便简洁的方法。
它根据树形结构将html页面中的标签分析成一个节点,一个类型的节点对应于一个类,通过调用它可以轻松访问标签中的内容。
2、html本质上是xml的子集,但html的语法不如html严格,不能用标准的DOM或SAX来分析html。
实例
fromhtml.parserimportHTMLParser fromhtml.entitiesimportnamecodepoint classMyHTMLParser(HTMLParser): defhandle_starttag(self,tag,attrs): print('<%s>'%tag) defhandle_endtag(self,tag): print('</%s>'%tag) defhandle_startendtag(self,tag,attrs): print('<%s/>'%tag) defhandle_data(self,data): print(data) defhandle_comment(self,data): print('<!--',data,'-->') defhandle_entityref(self,name): print('&%s;'%name) defhandle_charref(self,name): print('&#%s;'%name) parser=MyHTMLParser() parser.feed('''<html> <head></head> <body> <!--testhtmlparser--> <p>Some<ahref=\"#\">html</a>HTMLtutorial...<br>END</p> </body></html>''') ///test结果 <html> <head> </head> <body> <!--testhtmlparser--> <p> Some <a> html </a> HTMLtutorial... <br> END </p> </body> </html>
以上是python中htmlparser分析html,希望对大家有所帮助。更多Python学习指导:python基础教程
本文教程操作环境:windows7系统Python 3.9.1,DELL G3电脑。