scrapy使用xpath的extract()和extract_first()的區別

在使用scrapy爬蟲的時候,我們常常使用xpath來獲取html標籤,但是我們經常會用到提取的方法,有兩種提取的方法,分別是:

extract():這個方法返回的是一個數組list,,裏面包含了多個string,如果只有一個string,則返回['ABC']這樣的形式。

extract_first():這個方法返回的是一個string字符串,是list數組裏面的第一個字符串。

Xpath選擇器:
response.selector屬性返回內容相當於response的body構造了一個Selector對象。
Selector對象可以調用xpath()方法實現信息的解析提取。
在xpath()後使用extract()可以返回所有的元素結果。
若xpath()有問題,那麼extract()會返回一個空列表。
在xpath()後使用extract_first()可以返回第一個元素結果。
 

for v in dllist:
     print(v.xpath("./dt/text()").extract_first())
     print("="*50)
     alist = v.xpath(".//a")
     for a in alist:
             print(a.xpath("./@href").extract_first(),end=":")
             print(a.xpath("./span/img/@alt").extract_first())

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章