直接貼出最常用的路徑表示式
表示式描述
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...