scrapy中的spider傳參實(shí)現(xiàn)增量的方法
有時(shí)候需要根據(jù)項(xiàng)目的實(shí)際需求向spider傳遞參數(shù)來(lái)控制spider的運(yùn)行方式。
比如說(shuō),1.根據(jù)用戶提交的url來(lái)控制spider爬取的網(wǎng)站。2.根據(jù)需求增量爬取數(shù)據(jù)。
今天就寫(xiě)一個(gè)增量(augmenter)的方式:
Spider參數(shù)通過(guò) crawl 命令的 -a 選項(xiàng)來(lái)傳遞,比如:
scrapy crawl xxx -a augmenter=xxxxxx
注:augmenter=不為空
1.首先在spider里添加

注:在網(wǎng)上也看了不少的博客,最后發(fā)現(xiàn)*args, **kwargs這兩個(gè)必須加上,要不然會(huì)出現(xiàn)bug,不信的話可以試試哦!
如果想減少代碼量的話,可以寫(xiě)到類里面去繼承!那這樣的話,spider里面就不要在寫(xiě)了?。?!要不然就不起作用了?。?!
還有
super(eval(self.__class__.__name__), self).__init__(*args, **kwargs)
這里的eval()獲取的是類名,這樣寫(xiě)必須是最后一個(gè)是你要的類名,中間有繼承什么的,就會(huì)出錯(cuò)!或者直接把類名粘過(guò)來(lái)!
2.spider實(shí)現(xiàn)方式:


這樣就實(shí)現(xiàn)了簡(jiǎn)單的增量!增量的方式有很多,常見(jiàn)的:時(shí)間、計(jì)數(shù)、爬取特定的幾頁(yè)!
選擇自己需要的增量方式寫(xiě)在這個(gè)parse_augmenter()里面,
這樣需要從頭開(kāi)始run和增量run就不受影響!
到此這篇關(guān)于scrapy中的spider傳參實(shí)現(xiàn)增量的方法的文章就介紹到這了,更多相關(guān)scrapy spider傳參增量?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Matplotlib animation模塊實(shí)現(xiàn)動(dòng)態(tài)圖
這篇文章主要介紹了Matplotlib animation模塊實(shí)現(xiàn)動(dòng)態(tài)圖,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
python實(shí)現(xiàn)求解列表中元素的排列和組合問(wèn)題
本篇文章給大家分享使用python的內(nèi)置模塊實(shí)現(xiàn)求解列表中元素的排列和組合問(wèn)題,具體實(shí)現(xiàn)代碼大家參考下本文2018-03-03
Python3并發(fā)寫(xiě)文件與Python對(duì)比
這篇文章主要介紹了Python3并發(fā)寫(xiě)文件原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11
python腳本實(shí)現(xiàn)分析dns日志并對(duì)受訪域名排行
這篇文章主要介紹了python腳本實(shí)現(xiàn)分析dns日志并對(duì)受訪域名排行,本文是在Windows服務(wù)器環(huán)境中實(shí)現(xiàn),需要的朋友可以參考下2014-09-09
Python面向?qū)ο蟮某绦蛟O(shè)計(jì)詳情
這篇文章主要介紹了Python面向?qū)ο蟮某绦蛟O(shè)計(jì)詳情,面向?qū)ο蟮某绦蛟O(shè)計(jì)在Python中具有非常重要的地位,熟練的使用面向?qū)ο缶幊棠軌驗(yàn)槲覀兊腜ython編程提供很多的便利之處,希望您閱讀完本文后能夠有所收獲2022-01-01

