python中的xpath的使用

2021-08-19 06:05:06 字數 1174 閱讀 2344

直接貼出最常用的路徑表示式

表示式描述

nodename

選取此節點的所有子節點。

/從根節點擊取。

//從匹配選擇的當前節點擊擇文件中的節點,而不考慮它們的位置。

.選取當前節點。

..選取當前節點的父節點。

@選取屬性。

xpath('//span[@class="hhh"]' ) 選取屬性為hhh的span節點

xpath('string(".")') for迴圈中使用最常見,如xpath('//span[@class="hhh"]' )選取的結果一般為列表,所以必須去遍歷取得所要得到值;而一般節點下沒有子節點,就可以使用xpath('string(".")')

路徑表示式

結果/bookstore/book[1]

選取屬於 bookstore 子元素的第乙個 book 元素。

/bookstore/book[last()]

選取屬於 bookstore 子元素的最後乙個 book 元素。

/bookstore/book[last()-1]

選取屬於 bookstore 子元素的倒數第二個 book 元素。

/bookstore/book[position()<3]

選取最前面的兩個屬於 bookstore 元素的子元素的 book 元素。

//title[@lang]

選取所有擁有名為 lang 的屬性的 title 元素。

//title[@lang='eng']

選取所有 title 元素,且這些元素擁有值為 eng 的 lang 屬性。

/bookstore/book[price>35.00]

選取 bookstore 元素的所有 book 元素,且其中的 price 元素的值須大於 35.00。

/bookstore/book[price>35.00]/title

選取 bookstore 元素中的 book 元素的所有 title 元素,且其中的 price 元素的值須大於 35.00。

xpath('//input[@name="mp"]')[0].attrib['value'])

萬用字元描述

*匹配任何元素節點。

@*匹配任何屬性節點。

node()

匹配任何型別的節點。

python中xpath的使用

xpath在python的爬蟲學習中,起著舉足輕重的地位,對比正規表示式 re兩者可以完成同樣的工作,實現的功能也差不多,但xpath明顯比re具有優勢,在網頁分析上使re退居二線。xpath介紹 是什麼?全稱為xml path language一種小型的查詢語言 說道xpath是門語言,不得不說它...

python中OrderedDict的使用

很多人認為python中的字典是無序的,因為它是按照hash來儲存的,但是python中有個模組collections 英文,收集 集合 裡面自帶了乙個子類 ordereddict,實現了對字典物件中元素的排序。請看下面的例項 import collections print regular dic...

Python中defaultdict 的使用

1 類似於c 的stl中的map,可以自定義字典的value型別,比如 dict defaultdict list dict defaultdict int 1 自定義字典的value為列表 list 當訪問乙個key不存在時,將會為這個key自動建立乙個新的list,大小為空 from colle...