W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
下面是可用的內(nèi)置響應(yīng)子類的列表。您還可以對響應(yīng)類進(jìn)行子類化,以實(shí)現(xiàn)您自己的功能。
scrapy.http.
TextResponse
(url[, encoding[, ...]])?TextResponse
? 對象將編碼功能添加到基 ?Response
? 類,它只用于二進(jìn)制數(shù)據(jù),如圖像、聲音或任何媒體文件。
?TextResponse
? 對象支持新的 __init__
方法參數(shù),以及基 ?Response
? 物體。其余功能與 ?Response
? 類,此處未記錄。
encoding (str) -- 包含用于此響應(yīng)的編碼的字符串。如果創(chuàng)建一個 ?TextResponse
? 對象,它將轉(zhuǎn)換為使用此編碼編碼的字節(jié)。如果 編碼 是 None
(默認(rèn)),將在響應(yīng)頭和正文中查找編碼。
?TextResponse
? 除了標(biāo)準(zhǔn)之外,對象還支持以下屬性 ?Response
? 一:
text
響應(yīng)體,作為字符串。
一樣 response.body.decode(response.encoding)
,但結(jié)果在第一次調(diào)用后緩存,因此您可以訪問 response.text
多次無額外開銷。
注解
str(response.body)
不是將響應(yīng)正文轉(zhuǎn)換為字符串的正確方法:
>>> str(b'body')
"b'body'"
encoding
帶有此響應(yīng)編碼的字符串。按順序嘗試以下機(jī)制來解決編碼問題:
傳入的編碼 __init__
方法 encoding
參數(shù)
在內(nèi)容類型HTTP標(biāo)頭中聲明的編碼。如果此編碼無效(即未知),則忽略它并嘗試下一個解析機(jī)制。
響應(yīng)正文中聲明的編碼。TextResponse類不為此提供任何特殊功能。然而, ?HtmlResponse
? 和 ?XmlResponse
? 上課。
通過查看響應(yīng)主體推斷出的編碼。這是更脆弱的方法,也是最后一個嘗試的方法。
selector
A ?Selector
? 使用響應(yīng)作為目標(biāo)的實(shí)例。選擇器在第一次訪問時被惰性地實(shí)例化。
?TextResponse
? 對象除了支持標(biāo)準(zhǔn)之外還支持以下方法 ?Response
? 一:
xpath
(query)捷徑 TextResponse.selector.xpath(query)
::
response.xpath('//p')
css
(query)捷徑 TextResponse.selector.css(query)
::
response.css('p')
follow
(url, callback=None, method='GET', headers=None, body=None, cookies=None, meta=None, encoding=None, priority=0, dont_filter=False, errback=None, cb_kwargs=None, flags=None)返回A ?Request
? 要跟蹤鏈接的實(shí)例 url
. 它接受與 Request.__init__
方法,但 url
不僅可以是絕對URL,而且可以是
相對URL
一 ?Link
? 對象,例如 鏈接提取器
一 ?Selector
? 對象 <link>
或 <a>
元素,例如 response.css('a.my_link')[0]
屬性 ?Selector
? (不是選擇器列表),例如。 response.css('a::attr(href)')[0]
或 response.xpath('//img/@src')[0]
見 創(chuàng)建請求的快捷方式 用于示例。
follow_all
(urls=None, callback=None, method='GET', headers=None, body=None, cookies=None, meta=None, encoding=None, priority=0, dont_filter=False, errback=None, cb_kwargs=None, flags=None, css=None, xpath=None)產(chǎn)生 ?Request
? 跟蹤所有鏈接的實(shí)例 urls
. 它接受與 ?Request
? 的 __init__
方法,除了 urls
元素不需要是絕對URL,它可以是以下任何一個:
相對URL
一 ?Link
? 對象,例如 鏈接提取器
一 ?Selector
? 對象 <link>
或 <a>
元素,例如 response.css('a.my_link')[0]
屬性 ?Selector
? (不是選擇器列表),例如。 response.css('a::attr(href)')[0]
或 response.xpath('//img/@src')[0]
此外, css
和 xpath
參數(shù)可用于在中執(zhí)行鏈接提取 follow_all
方法(只有一個 urls
, css
和 xpath
接受)。
注意,當(dāng)經(jīng)過 SelectorList
作為 urls
參數(shù)或使用 css
或 xpath
參數(shù)時,此方法不會為無法從中獲取鏈接的選擇器生成請求(例如,沒有 href
屬性)
json
()2.2 新版功能.
將JSON文檔反序列化為Python對象。
從反序列化的JSON文檔返回Python對象。結(jié)果在第一次調(diào)用后被緩存。
scrapy.http.
HtmlResponse
(url[, ...])這個 ?HtmlResponse
? 類是的子類 ?TextResponse
? 它通過查看HTML添加了編碼自動發(fā)現(xiàn)支持 meta http-equiv 屬性。見 ?TextResponse.encoding
? .
scrapy.http.
XmlResponse
(url[, ...])這個 ?XmlResponse
? 類是的子類 ?TextResponse
? 它通過查看XML聲明行添加了編碼自動發(fā)現(xiàn)支持。見 ?TextResponse.encoding
? .
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: