溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

網(wǎng)頁結構的簡介和Xpath語法的入門教程

發(fā)布時間:2020-08-02 10:56:01 來源:網(wǎng)絡 閱讀:200 作者:pengdongcheng 欄目:編程語言

相信很多小伙伴已經(jīng)聽說過Xpath,之前小編也寫過一篇關于Xpath的文章,感興趣的小伙伴可以戳這篇文章如何利用Xpath抓取京東網(wǎng)商品信息以及Python網(wǎng)絡爬蟲四大選擇器(正則表達式、BS4、Xpath、CSS)總結。今天小編繼續(xù)給大家介紹一些Xpath知識點,希望對大家的學習有幫助。

1、Xpath讓我們可以使用一種類似于Windows下的文件路徑的方式,讓我們可以定位到HTML或者XML結構中的具體元素。Xpath本身包含標一些準函數(shù)庫,可以讓我們的Xpath語法更加強大。

網(wǎng)頁結構的簡介和Xpath語法的入門教程

2、在HTML結構中,有一定的層級關系,主要的關系包括:父節(jié)點、子節(jié)點、同胞節(jié)點(兄弟節(jié)點)、先輩節(jié)點、后代節(jié)點。

網(wǎng)頁結構的簡介和Xpath語法的入門教程

    一般的,像類似于這種結構,稱之為一個節(jié)點。如上圖,根據(jù)層次關系,我們可以知道節(jié)點是的父節(jié)點,相應的,節(jié)點是節(jié)點的子節(jié)點。同胞節(jié)點又叫兄弟節(jié)點,一般的處于同級層次的節(jié)點叫同胞節(jié)點,如上圖中的節(jié)點和第一個

節(jié)點、177~181行的

  • 標簽都是屬于同胞節(jié)點。先輩節(jié)點又叫祖先節(jié)點,一般的,一個節(jié)點的上層以上的節(jié)點均稱為先輩節(jié)點,所以父節(jié)點也是屬于先輩節(jié)點的一種?;诖?,我們又可以稱節(jié)點是的先輩節(jié)點。相對應的,一個節(jié)點的下層以下的節(jié)點均稱為后代節(jié)點,所以子節(jié)點也是屬于后代節(jié)點的一種?;诖耍覀冇挚梢苑Q節(jié)點是節(jié)點的后代節(jié)點。


3、理解這些節(jié)點之間的關系之后,可以方便我們更好的理解Xpath語法,下表是部分常用的Xpath語法。

網(wǎng)頁結構的簡介和Xpath語法的入門教程

    這里特別強調(diào)“/”和“//”的區(qū)別,“/”一般代表的某個元素的子節(jié)點,而不是全部的后代節(jié)點;而“//”一般代表的某個元素的后代節(jié)點,范圍比“/”代表的要更加廣泛一些。@符號后邊時常跟著class,代表選取名為class屬性的節(jié)點,比較常見。

4、下面針對具體的網(wǎng)頁源碼,讓大家了解一下網(wǎng)頁結構。

網(wǎng)頁結構的簡介和Xpath語法的入門教程

    如上圖中的紅色框框中,class為屬性,而等于號后邊的“grid-5”即為屬性值,有的時候節(jié)點內(nèi)不只是一個屬性,如上圖中的196行中,就有兩個屬性。

5、為了更加方便的定位到div或者其他節(jié)點下的標簽,我們需要繼續(xù)進一步的進行定位鎖定,下表是部分常用的Xpath語法。

網(wǎng)頁結構的簡介和Xpath語法的入門教程

    掌握了Xpath語法知識之后,我們就可以通過Xpath語法來進行編寫Xpath表達式,以提取網(wǎng)頁上的目標數(shù)據(jù)。

網(wǎng)頁結構的簡介和Xpath語法的入門教程

    千里之行,始于足下。如果想學好Xpath,更是需要勤加使用,下一篇文章將給大家介紹Xpath在Scrapy爬蟲項目中的使用。


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI