XPath

常用規(guī)則

  • 獲取文本

    表達(dá)式 描述
    a/text() 獲取 a 下的文本
    a//text() 獲取 a 下所有元素的文本
    //a[text()='下一頁(yè)'] 獲取文本為下一頁(yè)的 a 元素
  • 獲取屬性

    表達(dá)式 描述
    nodename 選取此節(jié)點(diǎn)的所有子節(jié)點(diǎn)
    / 從當(dāng)前節(jié)點(diǎn)選取直接子節(jié)點(diǎn)
    // 從當(dāng)前節(jié)點(diǎn)選取子孫節(jié)點(diǎn)
    . 選取當(dāng)前節(jié)點(diǎn)
    .. 選取當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn)
    @ 選取屬性
    * 匹配任何元素節(jié)點(diǎn)
    @* 匹配任何屬性節(jié)點(diǎn)
    node() 匹配任何類(lèi)型的節(jié)點(diǎn)

示例

路徑表達(dá)式 結(jié)果
/div/li[1] (注意下標(biāo)從1開(kāi)始) 選取屬于 div 子元素的第一個(gè)li元素
/div/li[last()] 選取屬于 div子元素的最后一個(gè) li元素
/div/li[last()-1] 選取屬于 div子元素的倒數(shù)第二個(gè) li元素
/div/li[position()<3] 選取屬于 div子元素的 最前面兩個(gè) li元素
//title[@lang] 選取所有擁有名為 lang 的屬性的title元素
//title[@lang='eng'] 選取所有 lang 屬性為 eng 的 title 元素
/div/li[price>35.00] 選取 div元素下所有 li元素,它們的 price 元素值大于 35.00
/div/li[price>35.00]/title 選取 div元素中的 li元素的所有 title 元素,且 price 元素的值大于35.00
/div/* 選取 div的所有子元素
//* 選取文檔中的所有元素
//node()/meta[]/@* 選取 html 下面任意節(jié)點(diǎn)的 meta 節(jié)點(diǎn)的所有屬性
//title[@*] 選取所有帶有屬性的 title 元素
//li/title | // li/price 選取 li元素的所有 title 和 price 元素
//title | //price 選取文檔中的所有 title 和 price 元素
//div/li/title | //price 選取屬于 div元素的 li元素的所有 title 元素,以及文檔中所有的 price 元素
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容