日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

xpath语法规范

發布時間:2024/1/23 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 xpath语法规范 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、選取節點
常用的路勁表達式:

表達式 描述 實例 ?
nodename 選取nodename節點的所有子節點
xpath(‘//div’)
選取了div節點的所有子節點
/ 從根節點選取 xpath(‘/div’) 從根節點上選取div節點
// 選取所有的當前節點,不考慮他們的位置
xpath(‘//div’) 選取所有的div節點
. 選取當前節點 xpath(‘./div’)
選取當前節點下的div節點
.. 選取當前節點的父節點
xpath(‘..’) 回到上一個節點
@ 選取屬性
xpath(’//@calss’)
選取所有的class屬性

二、謂語

謂語被嵌在方括號內,用來查找某個特定的節點或包含某個制定的值的節點

實例:

?

表達式 結果
xpath(‘/body/div[1]’)
選取body下的第一個div節點
xpath(‘/body/div[last()]’)
選取body下最后一個div節點
xpath(‘/body/div[last()-1]’) 選取body下倒數第二個div節點
xpath(‘/body/div[positon()<3]’) 選取body下前兩個div節點
xpath(‘/body/div[@class]’) 選取body下帶有class屬性的div節點
xpath(‘/body/div[@class=”main”]’) 選取body下class屬性為main的div節點
xpath(‘/body/div[price>35.00]’) 選取body下price元素值大于35的div節點

?三、通配符

Xpath通過通配符來選取未知的XML元素

表達式 結果
xpath(’/div/*’)
選取div下的所有子節點
xpath(‘/div[@*]’)
選取所有帶屬性的div節點

?四、取多個路徑

使用“|”運算符可以選取多個路徑

表達式 結果
xpath(‘//div|//table’)
選取所有的div和table節點

五、Xpath軸

軸可以定義相對于當前節點的節點集

軸名稱 表達式 描述
ancestor
xpath(‘./ancestor::*’) 選取當前節點的所有先輩節點(父、祖父)
ancestor-or-self xpath(‘./ancestor-or-self::*’) 選取當前節點的所有先輩節點以及節點本身
attribute xpath(‘./attribute::*’) 選取當前節點的所有屬性
child xpath(‘./child::*’) 返回當前節點的所有子節點
descendant xpath(‘./descendant::*’) 返回當前節點的所有后代節點(子節點、孫節點)
following xpath(‘./following::*’) 選取文檔中當前節點結束標簽后的所有節點
following-sibing xpath(‘./following-sibing::*’) 選取當前節點之后的兄弟節點
parent xpath(‘./parent::*’) 選取當前節點的父節點
preceding xpath(‘./preceding::*’) 選取文檔中當前節點開始標簽前的所有節點

?

preceding-sibling xpath(‘./preceding-sibling::*’) 選取當前節點之前的兄弟節點
self xpath(‘./self::*’) 選取當前節點

?

六、功能函數???

使用功能函數能夠更好的進行模糊搜索

函數 用法 解釋
starts-with xpath(‘//div[starts-with(@id,”ma”)]‘) 選取id值以ma開頭的div節點
contains
xpath(‘//div[contains(@id,”ma”)]‘) 選取id值包含ma的div節點
and
xpath(‘//div[contains(@id,”ma”) and contains(@id,”in”)]‘) 選取id值包含ma和in的div節點
text() xpath(‘//div[contains(text(),”ma”)]‘) 選取節點文本包含ma的div節點
? ? ?

scrapy xpath文檔: http://doc.scrapy.org/en/0.14/topics/selectors.html

總結

以上是生活随笔為你收集整理的xpath语法规范的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。