一、簡介
xpath 是一門在 xml 文件中查詢資訊的語言。xpath 可用來在 xml 文件中對元素和屬性進行遍歷。xpath 是 w3c xslt 標準的主要元素,並且 xquery 和 xpointer 都構建於 xpath 表達之上。
二、安裝
pip3 install lxml
三、使用
1、匯入
from lxml import etree
2、基本使用
from lxml import etree
wb_data = """
class="item-0">
href="link1.html">first itema>
li>
class="item-1">
href="link2.html">second itema>
li>
class="item-inactive">
href="link3.html">third itema>
li>
class="item-1">
href="link4.html">fourth itema>
li>
class="item-0">
href="link5.html">fifth itema>
ul>
div>
"""html = etree.html(wb_data)
print(html)
四、使用案例
1、獲取a標籤裡面的內容
html = etree.html(wb_data)
html_data = html.xpath('/html/body/div/ul/li/a')
print(html)
for i in html_data:
print(i.text)
at0x12fe4b8>
first
item
second
item
third
item
fourth
item
fifth
item
2、獲取指定標籤裡面的內容
html_data = html.xpath('/html/body/div/ul/li/a/text()')
print(html)
for i in html_data:
print(i)
at0x138e4b8>
first
item
second
item
third
item
fourth
item
fifth
item
3、獲取a標籤的屬性
html = etree.html(wb_data)
html_data = html.xpath('/html/body/div/ul/li/a/@href')
for i in html_data:
print(i)
列印:link1.html
link2.html
link3.html
link4.html
link5.html
4、獲取指定標籤裡面的內容
html_data = html.xpath('/html/body/div/ul/li/a[@href="link2.html"]/text()')
print(html_data)
for i in html_data:
print(i)
列印:['second
item']
second
item
5、使用li標籤下的a標籤內容。(使用相對路徑)
html = etree.html(wb_data)
html_data = html.xpath('//li/a/text()')
print(html_data)
for i in html_data:
print(i)
列印:['first item', 'second item', 'third item', 'fourth item', 'fifth item']
first item
second item
third item
fourth item
fifth item
6、查詢倒數第二個a標籤的href屬性
html = etree.html(wb_data)
html_data = html.xpath('//li[last()-1]/a/text()')
print(html_data)
for i in html_data:
print(i)
列印:['fourth item']
fourth item
7、通過屬性名稱等提權
//*[
@id="kw"]
python 爬蟲之xpath用法
xpath全稱為xml path language一種小型的查詢語言,在爬蟲中,我們其實就是拿它來搜尋html文件,僅此而已。而網頁內容只有通過解析才能進行搜尋,所以使用xpath時,需要引入lxml庫,這個庫就是來解析網頁,協助xpath進行搜尋的。lxml庫的安裝,可以直接使用 pip3 ins...
Python爬蟲之Xpath解析
例項化乙個etree物件,且需要將被解析的頁面的原始碼資料載入到該物件中 呼叫etree物件中的xpath方法結合著xpath表示式實現標籤的定位和內容的捕獲 pip install lxmlfrom lxml import etree1 將本地的html檔案中的原始碼載入到etree物件中 etr...
python爬蟲之xpath的基本使用
xpath 是一門在 xml 文件中查詢資訊的語言。xpath 用於在 xml 文件中通過元素和屬性進行導航。所以在使用xpath之前需要了解html以及xml相關知識。xml例項文件 我們將在下面的例子中使用這個 xml 文件。lang eng harry pottertitle 29.99pri...