python爬虫(十三) lxml模块


lxml是一个HTML/XML的解析库,主要功能是如何解析和提取HTML/XML数据

lxml和正则一样,是用c实现的,我们可以用XPath语法,来快速的定位特定元素以及节点信息。需要用到pip。

使用:

1、解析一段html的字符串

from lxml import etree

text="""

# 一段html代码
"""

htmlElement=etree.HTML(text)
print(etree.tostring(htmlElement,encoding='utf-8').decode('utf-8'))

使用etree.HTML()

不需要解析器

2、解析一个html代码的文件

htmlElement=etree.parse("xxx.html")
print(etree.tostring(htmlElement,encoding='utf-8').decode('utf-8'))

使用etree.parse("xxx.html")

但是这个方法不能处理一些不规范的标签

所以要加一行解析器:parser=etree.HTMLParser(encoding='utf-8')

from lxml import etree



parser=etree.HTMLParser(encoding='utf-8')
htmlElement=etree.parse("lagou.html",parser=parser)

print(etree.tostring(htmlElement,encoding='utf-8').decode('utf-8'))

结果:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM