1. 程式人生 > >xpath語法從當前節點繼續尋找子節點

xpath語法從當前節點繼續尋找子節點

nodename 選取此節點的所有子節點。
/ 從根節點選取。
// 從匹配選擇的當前節點選擇文件中的節點,而不考慮它們的位置。
. 選取當前節點。
.. 選取當前節點的父節點。
@ 選取屬性。

以上是w3school上的xpath語法介紹,下面有個問題,

div_list = response.xpath("//div[@class='quote']")
for each_div in div_list:
    content = each_div.xpath(".//span[@class='text']/text()").extract_first()
    author = each_div.xpath(".//small[@class='author']/text()").extract_first()
    tag_list = each_div.xpath(".//a[@class='tag']/text()").extract()

在使用scrapy框架書寫爬蟲的時候,使用xpath找到了需要的div_list標籤組成的陣列,然後依次遍歷每個div,我的需求是,從每個div中繼續尋找子節點,語法應該怎麼寫呢,因為是從每個div(而不是根節點)開始尋找,因此第一步需要選取當前節點,在xpath語法中,使用.表示選取當前節點,然後再選擇所有的子節點。之前做的時候不知道先選取當前節點,選出來的一直都不是自己需要的。