Scrapy 自定義settings--簡化編寫爬蟲操作--加快爬蟲速度

爬蟲應(yīng)該算是數(shù)據(jù)挖掘的第一步,也是分析數(shù)據(jù)的基礎(chǔ)渺氧,更是得出結(jié)論的基石旨涝。爬蟲大到一個團隊在維護,小到畢業(yè)論文侣背。Python應(yīng)該算是大家非常喜歡的爬蟲語言(理由不用多說都知道的)白华;而scrapy框架應(yīng)該算是爬蟲模塊、框架中的佼佼者贩耐,今天我們自定義settings.py文件。

scrapy項目結(jié)構(gòu)

那么我們自定義的就是這個settings.py文件的部分設(shè)置管搪,今天修改瀏覽器頭铡买。理由:

1更鲁、簡單防止反爬蟲(豆瓣....)

2、加快爬取速度

3奇钞、不用每次都是修改項目文件的settings.py

...........

對于settings.py文件下的很多含義參考官方文檔:scrapy中文文檔岁经、scrapy英文文檔

這里解釋幾個參數(shù):

ROBOTSTXT_OBEY = True-----------是否遵守robots.txt

CONCURRENT_REQUESTS = 16-----------開啟線程數(shù)量蛇券,默認(rèn)16

AUTOTHROTTLE_START_DELAY = 3-----------開始下載時限速并延遲時間

AUTOTHROTTLE_MAX_DELAY = 60-----------高并發(fā)請求時最大延遲時間

最底下的幾個:是否啟用在本地緩存,如果開啟會優(yōu)先讀取本地緩存纠亚,從而加快爬取速度塘慕,視情況而定

HTTPCACHE_ENABLED = True

HTTPCACHE_EXPIRATION_SECS = 0

HTTPCACHE_DIR = 'httpcache'

HTTPCACHE_IGNORE_HTTP_CODES = []

HTTPCACHE_STORAGE = 'scrapy.extensions.httpcache.FilesystemCacheStorage'

以上幾個可以視項目需要開啟,但是有兩個參數(shù)最好每次都開啟蒂胞,而每次都是項目文件手動開啟不免有些麻煩图呢,最好是項目創(chuàng)建后就自動開啟

#DEFAULT_REQUEST_HEADERS = {

# ? 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',

# ? 'Accept-Language': 'en',

這個是瀏覽器請求頭骗随,很多網(wǎng)站都會檢查客戶端的headers,比如豆瓣就是每一個請求都檢查headers的user_agent指蚜,否則只會返回403涨椒,可以開啟

#USER_AGENT = 'Chirco (+http://www.yourdomain.com)'

這個是至關(guān)重要的摊鸡,大部分服務(wù)器在請求快了會首先檢查User_Agent,而scrapy默認(rèn)的瀏覽器頭是scrapy1.1 我們需要開啟并且修改成瀏覽器頭蚕冬,如:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/22.0.1207.1 Safari/537.1

但是最好是這個USER-AGENT會隨機自動更換最好了。


首先我們可以收集幾個瀏覽器頭囤热,比如:

瀏覽器頭列表

用隨機函數(shù)random自動更換頭旁蔼,找到scrapy根目錄下:X:\Python35\Lib\site-packages\scrapy\templates\project\module

修改的就是這個settings.py.tmpl模板文件

每次執(zhí)行scrapy startproject name 都會在這個基模版下創(chuàng)建settings.py文件

scrapy模板文件settings.py.tmpl

執(zhí)行scrapy startproject name后看到settings.py生效了


修改模板后的settings.py文件

現(xiàn)在我們來檢查一下我們剛剛的操作是否生效牌芋,這里簡單創(chuàng)建一個scrapy


執(zhí)行6次,每次打印request的頭


執(zhí)行結(jié)果

執(zhí)行結(jié)果發(fā)現(xiàn)每次的瀏覽器頭都是不一樣的

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末肯夏,一起剝皮案震驚了整個濱河市犀暑,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌耐亏,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,639評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件暇矫,死亡現(xiàn)場離奇詭異主之,居然都是意外死亡李根,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評論 3 385
  • 文/潘曉璐 我一進店門粤攒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來囱持,“玉大人夯接,你說我怎么就攤上這事》鬃保” “怎么了?”我有些...
    開封第一講書人閱讀 157,221評論 0 348
  • 文/不壞的土叔 我叫張陵问欠,是天一觀的道長粒蜈。 經(jīng)常有香客問我,道長枯怖,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,474評論 1 283
  • 正文 為了忘掉前任肿轨,我火速辦了婚禮蕊程,結(jié)果婚禮上椒袍,老公的妹妹穿的比我還像新娘藻茂。我一直安慰自己,他們只是感情好优俘,可當(dāng)我...
    茶點故事閱讀 65,570評論 6 386
  • 文/花漫 我一把揭開白布掀序。 她就那樣靜靜地躺著,像睡著了一般不恭。 火紅的嫁衣襯著肌膚如雪财饥。 梳的紋絲不亂的頭發(fā)上浑娜,一...
    開封第一講書人閱讀 49,816評論 1 290
  • 那天,我揣著相機與錄音,去河邊找鬼暴拄。 笑死,一個胖子當(dāng)著我的面吹牛粪摘,可吹牛的內(nèi)容都是我干的羔杨。 我是一名探鬼主播豁鲤,決...
    沈念sama閱讀 38,957評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼琳骡,長吁一口氣:“原來是場噩夢啊……” “哼讼溺!你這毒婦竟也來了楣号?” 一聲冷哼從身側(cè)響起怒坯,我...
    開封第一講書人閱讀 37,718評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎视译,沒想到半個月后归敬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體酷含,經(jīng)...
    沈念sama閱讀 44,176評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡第美,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,511評論 2 327
  • 正文 我和宋清朗相戀三年陆爽,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片慌闭。...
    茶點故事閱讀 38,646評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖省古,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情豺妓,我是刑警寧澤,帶...
    沈念sama閱讀 34,322評論 4 330
  • 正文 年R本政府宣布训堆,位于F島的核電站白嘁,受9級特大地震影響坑鱼,放射性物質(zhì)發(fā)生泄漏絮缅。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,934評論 3 313
  • 文/蒙蒙 一画恰、第九天 我趴在偏房一處隱蔽的房頂上張望屎开。 院中可真熱鬧阐枣,春花似錦、人聲如沸蔼两。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽档泽。三九已至,卻和暖如春馆匿,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背渐北。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留恃锉,地道東北人。 一個月前我還...
    沈念sama閱讀 46,358評論 2 360
  • 正文 我出身青樓肪跋,卻偏偏與公主長得像,于是被迫代替她去往敵國和親州既。 傳聞我的和親對象是個殘疾皇子萝映,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,514評論 2 348

推薦閱讀更多精彩內(nèi)容