日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網(wǎng)站首頁 編程語言 正文

scrapy中的spider傳參實現(xiàn)增量的方法_python

作者:retime123 ? 更新時間: 2022-08-04 編程語言

有時候需要根據(jù)項目的實際需求向spider傳遞參數(shù)來控制spider的運行方式。

比如說,1.根據(jù)用戶提交的url來控制spider爬取的網(wǎng)站。2.根據(jù)需求增量爬取數(shù)據(jù)。

今天就寫一個增量(augmenter)的方式:

Spider參數(shù)通過?crawl?命令的 -a 選項來傳遞,比如:

scrapy crawl xxx -a augmenter=xxxxxx

注:augmenter=不為空

1.首先在spider里添加

注:在網(wǎng)上也看了不少的博客,最后發(fā)現(xiàn)*args, **kwargs這兩個必須加上,要不然會出現(xiàn)bug,不信的話可以試試哦!

如果想減少代碼量的話,可以寫到類里面去繼承!那這樣的話,spider里面就不要在寫了!!!要不然就不起作用了!!!

還有

super(eval(self.__class__.__name__), self).__init__(*args, **kwargs)

這里的eval()獲取的是類名,這樣寫必須是最后一個是你要的類名,中間有繼承什么的,就會出錯!或者直接把類名粘過來!

2.spider實現(xiàn)方式:

這樣就實現(xiàn)了簡單的增量!增量的方式有很多,常見的:時間、計數(shù)、爬取特定的幾頁!

選擇自己需要的增量方式寫在這個parse_augmenter()里面,

這樣需要從頭開始run和增量run就不受影響!

原文鏈接:https://blog.csdn.net/qq_24760381/article/details/80361400

欄目分類
最近更新