最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

scrapy頭部修改的方法詳解

 更新時(shí)間:2020年12月06日 10:03:59   作者:周少欽  
這篇文章主要給大家介紹了關(guān)于scrapy頭部修改的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

被Scrapy自動(dòng)添加的頭部

在沒(méi)有任何配置的情況下,scrapy會(huì)對(duì)請(qǐng)求默認(rèn)加上一些頭部信息

Scrapy會(huì)通過(guò)配置文件中的USER_AGENT配置,自動(dòng)為頭部添加User-Agent,這條配置會(huì)被任何包含User-Agent的配置覆蓋

當(dāng)請(qǐng)求經(jīng)過(guò)下載器后,會(huì)被自動(dòng)添加頭部Accept-Encoding: gzip,deflate, 會(huì)被任意包含Accept-Encoding的頭部配置覆蓋

配置settings.py文件中默認(rèn)的頭部

#DEFAULT_REQUEST_HEADERS = {
# 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
# 'Accept-Language': 'en'
#}

當(dāng)這個(gè)配置屬于注釋狀態(tài)時(shí),頭部被設(shè)置為Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8與
Accept-Language: en,可以通過(guò)取消注釋修改或增刪其中的內(nèi)容

優(yōu)先級(jí)

  • 會(huì)被Request和中間件中的頭部配置覆蓋
  • 可以覆蓋scrapy自動(dòng)添加的User-Agent和Accept-Encoding

可以在爬蟲(chóng)中通過(guò)custom_settings設(shè)置配置僅在當(dāng)前爬蟲(chóng)生效

class XXXSpider(scrapy.Spider):
 ...
 custom_settings = {
  DEFAULT_REQUEST_HEADERS = {...}
	}
 ....

在Request中設(shè)置頭部

當(dāng)給引擎返回Request時(shí),可以為他配置頭部

...
def parse(self):
  headers = {
    ...
  }
  
  yield scrapy.Request(url, headers=headers)

優(yōu)先級(jí)

  • Request中設(shè)置的header會(huì)和settings.py文件中的默認(rèn)頭部合并到一起,如果有重復(fù)的配置,那么會(huì)覆蓋那條配置
  • 會(huì)被中間件中的配置覆蓋

在中間件中配置

當(dāng)Request請(qǐng)求通過(guò)下載中間件發(fā)往下載器時(shí),可以通過(guò)下載中間件配置頭部

class XXXDownloaderMiddleware
  def process_request(self, request, spider):
	  request.headers["key"] = value
    return None

還需要在配置文件中啟用下載中間價(jià)

DOWNLOADER_MIDDLEWARES = {
  'project.middlewares.XXXDownloaderMiddleware': 543,
}

優(yōu)先級(jí)

  • 會(huì)覆蓋除了Referer以外的所有頭部配置

referer中間件

當(dāng)存在多次請(qǐng)求時(shí),referer中間件會(huì)自動(dòng)幫Request的頭部中的referer加上上一次請(qǐng)求的url

優(yōu)先級(jí)

  • 最高,會(huì)在所有頭部配置完之后,添加referer
  • 除了只請(qǐng)求一次沒(méi)有referer的情況,就算在其他頭部配置中設(shè)置了referer也會(huì)被referer中間件覆蓋

關(guān)閉referer中間件

在配置文件中添加REFERER_ENABLED=False即可關(guān)閉

優(yōu)先級(jí)分析

Scrapy自動(dòng)添加的User-Agent與Accept-Encoding < 配置文件中的默認(rèn)配置DEFAULT_REQUEST_HEADERS < Request中修改的header < 中間件中添加的header < referer中間件添加的referer

此篇文章僅表示自己對(duì)scrapy的理解,如有錯(cuò)誤歡迎指正

到此這篇關(guān)于scrapy頭部修改的文章就介紹到這了,更多相關(guān)scrapy頭部修改內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python+MongoDB自增鍵值的簡(jiǎn)單實(shí)現(xiàn)

    Python+MongoDB自增鍵值的簡(jiǎn)單實(shí)現(xiàn)

    下面小編就為大家?guī)?lái)一篇Python+MongoDB自增鍵值的簡(jiǎn)單實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-11-11
  • python獲取磁盤(pán)號(hào)下盤(pán)符步驟詳解

    python獲取磁盤(pán)號(hào)下盤(pán)符步驟詳解

    在本篇文章里小編給大家整理了關(guān)于python如何獲取磁盤(pán)號(hào)下盤(pán)符的操作步驟以及實(shí)例代碼,有興趣的朋友們學(xué)習(xí)下。
    2019-06-06
  • Python中裝飾器的一個(gè)妙用

    Python中裝飾器的一個(gè)妙用

    這篇文章主要介紹了Python中裝飾器的一個(gè)妙用,本文是在寫(xiě)一個(gè)爬蟲(chóng)程序時(shí)總結(jié)而來(lái),實(shí)現(xiàn)定義一個(gè)裝飾器,如果之前取到數(shù)據(jù),就直接取cache的數(shù)據(jù),如果之前沒(méi)有取到,那么就從網(wǎng)站拉取,并且存入cache中,需要的朋友可以參考下
    2015-02-02
  • python算法練習(xí)之兔子產(chǎn)子(斐波那切數(shù)列)

    python算法練習(xí)之兔子產(chǎn)子(斐波那切數(shù)列)

    這篇文章主要給大家介紹python算法練習(xí)兔子產(chǎn)子,文章先進(jìn)行問(wèn)題描述及分析然后設(shè)計(jì)算法最后再得出完整程序,需要的朋友可以參考一下 文章得具體內(nèi)容
    2021-10-10
  • Python實(shí)現(xiàn)將wav轉(zhuǎn)amr,并轉(zhuǎn)換成hex數(shù)組

    Python實(shí)現(xiàn)將wav轉(zhuǎn)amr,并轉(zhuǎn)換成hex數(shù)組

    這篇文章主要介紹了Python實(shí)現(xiàn)將wav轉(zhuǎn)amr,并轉(zhuǎn)換成hex數(shù)組方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 一文教會(huì)你用Python繪制動(dòng)態(tài)可視化圖表

    一文教會(huì)你用Python繪制動(dòng)態(tài)可視化圖表

    數(shù)據(jù)可視化是數(shù)據(jù)科學(xué)中關(guān)鍵的一步,下面這篇文章主要給大家介紹了關(guān)于如何利用Python繪制動(dòng)態(tài)可視化圖表的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • Python中xlsx文件轉(zhuǎn)置操作詳解(行轉(zhuǎn)列和列轉(zhuǎn)行)

    Python中xlsx文件轉(zhuǎn)置操作詳解(行轉(zhuǎn)列和列轉(zhuǎn)行)

    很多時(shí)候我們處理的Excel表格并不是我們想要的樣子,需要將表格的形式進(jìn)行相應(yīng)轉(zhuǎn)換后進(jìn)行數(shù)據(jù)分析操作,下面這篇文章主要給大家介紹了關(guān)于Python中xlsx文件轉(zhuǎn)置操作(行轉(zhuǎn)列和列轉(zhuǎn)行)的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • Python 對(duì)象序列化與反序列化之pickle json詳細(xì)解析

    Python 對(duì)象序列化與反序列化之pickle json詳細(xì)解析

    我們知道在Python中,一切皆為對(duì)象,實(shí)例是對(duì)象,類(lèi)是對(duì)象,元類(lèi)也是對(duì)象。本文正是要聊聊如何將這些對(duì)象有效地保存起來(lái),以供后續(xù)使用
    2021-09-09
  • Python 中的 plt.hist 函數(shù)基本用法詳解

    Python 中的 plt.hist 函數(shù)基本用法詳解

    plt.hist 函數(shù)用于繪制直方圖,直方圖是一種用來(lái)表示數(shù)據(jù)分布的圖形,它將數(shù)據(jù)分成若干個(gè)區(qū)間,然后統(tǒng)計(jì)每個(gè)區(qū)間中數(shù)據(jù)的數(shù)量,最終以柱狀圖的形式展示出來(lái),這篇文章主要介紹了Python 中的 plt.hist 函數(shù)基本用法詳解,需要的朋友可以參考下
    2021-04-04
  • python內(nèi)置函數(shù):lambda、map、filter簡(jiǎn)單介紹

    python內(nèi)置函數(shù):lambda、map、filter簡(jiǎn)單介紹

    Python 內(nèi)置了一些比較特殊且實(shí)用的函數(shù),使用這些能使你的代碼簡(jiǎn)潔而易讀。下面對(duì)python內(nèi)置函數(shù):lambda、map、filter簡(jiǎn)單介紹下,需要的朋友參考下吧
    2017-11-11

最新評(píng)論

龙南县| 道真| 宝丰县| 定兴县| 新巴尔虎右旗| 潮州市| 师宗县| 砚山县| 富源县| 子洲县| 攀枝花市| 澄江县| 岐山县| 丰顺县| 封丘县| 象山县| 兴文县| 芒康县| 荆州市| 江都市| 固安县| 开原市| 宣汉县| 泰顺县| 和田市| 驻马店市| 通山县| 广平县| 四会市| 阿拉善左旗| 固镇县| 沧源| 栾川县| 高平市| 长寿区| 台安县| 榕江县| 温泉县| 东兴市| 驻马店市| 土默特右旗|