xpath(xml path language)是一門在xml和html文件中查詢資訊的語言,可用來在xml和html文件中對元素和屬性進行遍歷。
chrome外掛程式xpath helper。
安裝方法:
開啟外掛程式伴侶,選擇外掛程式
選擇提取外掛程式內容到桌面,桌面上會多乙個資料夾
把資料夾放入想要放的路徑下
開啟谷歌瀏覽器,選擇擴充套件程式,開發者模式開啟,選擇載入已解壓的擴充套件程式,選擇路徑開啟即可
firefox外掛程式try xpath。
在 xpath 中,有七種型別的節點:元素、屬性、文字、命名空間、處理指令、注釋以及文件(根)節點。xml 文件是被作為節點樹來對待的。樹的根被稱為文件節點或者根節點。
使用//獲取整個頁面當中的元素,然後寫標籤名,然後在寫謂語進行提取,比如:
//title[@lang=
'en'
]
/和//的區別:/代表只獲取子節點,//獲取子孫節點,一般//用的比較多,當然也要視情況而定
contains:有時候某個屬性中包含了多個值,那麼可以使用contains函式,示例如下:
//title[contains(@lang,
'en'
)]
謂詞中下標是從1開始的,不是從0開始的
lxml 是 乙個html/xml的解析器,主要的功能是如何解析和提取 html/xml 資料。
from lxml import etree
text =
'''
'''# 將字串解析為html文件
html = etree.html(text)
print
(html)
# 按字串序列化html
result = etree.tostring(html)
.decode(
'utf-8'
)print
(result)
#讀取
html = etree.parse(
'hello.html'
)result = etree.tostring(html)
.decode(
'utf-8'
)print
(result)
>
>
class
="item-0"
>
href
="link1.html"
>
first itema
>
li>
class
="item-1"
>
href
="link2.html"
>
second itema
>
li>
class
="item-inactive"
>
href
="link3.html"
>
class
="bold"
>
third itemspan
>
a>
li>
class
="item-1"
>
href
="link4.html"
>
fourth itema
>
li>
class
="item-0"
>
href
="link5.html"
>
fifth itema
>
li>
ul>
div>
語法練習
from lxml import etree
html = etree.parse(
'hello.html'
)# 獲取所有li標籤:
result = html.xpath(
'//li'
)print
(result)
for i in result:
print
(etree.tostring(i)
)# 獲取所有li元素下的所有class屬性的值:
result = html.xpath(
'//li/@class'
)print
(result)
# 獲取li標籤下href為www.baidu.com的a標籤:
# 獲取li標籤下所有span標籤:
result = html.xpath(
'//li//span'
)print
(result)
# 獲取li標籤下的a標籤裡的所有class:
result = html.xpath(
'//li/a//@class'
)print
(result)
# 獲取最後乙個li的a的href屬性對應的值:
result = html.xpath(
'//li[last()]/a/@href'
)print
(result)
# 獲取倒數第二個li元素的內容:
result = html.xpath(
'//li[last()-1]/a'
)print
(result)
print
(result[0]
.text)
# 獲取倒數第二個li元素的內容的第二種方式:
result = html.xpath(
'//li[last()-1]/a/text()'
)print
(result)
XPath語法和lxml模組
xpath xml path language 是一門在xml和html文件中查詢資訊的語言,可用來在xml和html文件中對元素和屬性進行遍歷。chrome外掛程式xpath helper。firefox外掛程式try xpath。xpath 使用路徑表示式來選取 xml 文件中的節點或者節點集。...
XPath語法和lxml模組(上)
xpath xml path language 是一門在xml和html文件中查詢資訊的語言,可用來在xml和html文件中對元素和屬性進行遍歷。chrome外掛程式xpath helper。firefox外掛程式try xpath。xpath 使用路徑表示式來選取 xml 文件中的節點或者節點集。...
例項帶你快速入門XPath語法和lxml模組
xpath xml path language 是一門在xml和html文件中查詢資訊的語言,可用來在xml和html文件中對元素和屬性進行遍歷。chrome外掛程式xpath helper。firefox外掛程式try xpath。xpath 使用路徑表示式來選取 xml 文件中的節點或者節點集。...