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'))
結果:

