W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
響應(yīng)對象公開 ?Selector
? 實(shí)例對 ?.selector
? 屬性:
>>> response.selector.xpath('//span/text()').get()
'good'
使用xpath和css查詢響應(yīng)非常常見,因此響應(yīng)中還包含兩個(gè)快捷方式: ?response.xpath()
? 和 ?response.css()
? :
>>> response.xpath('//span/text()').get()
'good'
>>> response.css('span::text').get()
'good'
Scrapy選擇器是 Selector 通過傳遞 TextResponse 對象或標(biāo)記作為字符串(在 text 爭論)。
通常不需要手動(dòng)構(gòu)造垃圾選擇器: response 對象在spider回調(diào)中可用,因此在大多數(shù)情況下使用它更方便 response.css() 和 response.xpath() 捷徑。通過使用 response.selector 或者這些快捷方式之一,您還可以確保響應(yīng)主體只解析一次。
但如果需要,可以使用 Selector 直接。從文本構(gòu)建:
>>> from scrapy.selector import Selector
>>> body = '<html><body><span>good</span></body></html>'
>>> Selector(text=body).xpath('//span/text()').get()
'good'
從響應(yīng)構(gòu)造- HtmlResponse 是其中之一 TextResponse 子類:
>>> from scrapy.selector import Selector
>>> from scrapy.http import HtmlResponse
>>> response = HtmlResponse(url='http://example.com', body=body)
>>> Selector(response=response).xpath('//span/text()').get()
'good'
Selector 根據(jù)輸入類型自動(dòng)選擇最佳的解析規(guī)則(XML對HTML)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: