XPath是一種用于在XML文檔中定位和選擇元素的語言。它是一種基于路徑表達(dá)式的語言,可以使用路徑表達(dá)式來選擇XML文檔中的元素。
以下是XPath中一些常用的語法總結(jié):
語法規(guī)則
表達(dá)式 | 作用 |
---|---|
nodename | 選取此層級節(jié)點下的所有子節(jié)點 |
/ | 代表從根節(jié)點進行選取 |
// | 可以理解為匹配,就是在所有節(jié)點中選取此節(jié)點,直到匹配為止 |
. | 選取當(dāng)前節(jié)點 |
… | 選取當(dāng)前節(jié)點上一層(上一級目錄) |
@ | 選取屬性(也是匹配) |
標(biāo)簽定位
方式 | 效果 |
---|---|
/html/body/div | 表示從根節(jié)點開始尋找,標(biāo)簽與標(biāo)簽之間/表示一個層級 |
/html//div | 表示多個層級 作用于兩個標(biāo)簽之間(也可以理解為在html下進行匹配尋找標(biāo)簽div) |
//div | 從任意節(jié)點開始尋找,也就是查找所有的div標(biāo)簽 |
./div | 表示從當(dāng)前的標(biāo)簽開始尋找div |
屬性定位
需求 | 格式 |
---|---|
定位div中屬性名為href,屬性值為‘www.baidu.com’的div標(biāo)簽 | @屬性名=屬性值 |
href為屬性名 ‘www.baidu.com’為屬性值 | /html/body/div[href=‘www.baidu.com’] |
索引定位
需求 | 格式 |
---|---|
定位ul下第二個li標(biāo)簽(下圖) | //ul/li[2] |
索引值開始位置為 | 1 |
取文本內(nèi)容
方法 | 效果 |
---|---|
/text() | 獲取標(biāo)簽下直系的標(biāo)簽內(nèi)容 |
//text() | 獲取標(biāo)簽中所有的文本內(nèi)容 |
string() | 獲取標(biāo)簽中所有的文本內(nèi)容 |
xpath的使用使得我們在爬起到網(wǎng)頁源代碼時可以快速找到我們需要的數(shù)據(jù),如:圖片鏈接,文章標(biāo)題等
未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » python爬蟲之—xpath基本語法總結(jié)