蟒蛇scrapy如何編寫代碼,而不是使用CMD參數:使用自定義代碼在Scrapy
我用來做這在cmd中
-s JOBDIR=crawls/somespider-1
處理dublicated項目。 請注意,我已經做了更改設置
我不'想要在cmd中使用。
反正有,所以我可以在我的蜘蛛內的代碼中鍵入它?
謝謝
蟒蛇scrapy如何編寫代碼,而不是使用CMD參數:使用自定義代碼在Scrapy
我用來做這在cmd中
-s JOBDIR=crawls/somespider-1
處理dublicated項目。 請注意,我已經做了更改設置
我不'想要在cmd中使用。
反正有,所以我可以在我的蜘蛛內的代碼中鍵入它?
謝謝
這很容易。使用pipelines.py中的dropitem刪除項目。您可以使用自定義命令對程序內部的參數進行編碼。
Here is example of custom code in scrapy
使用自定義命令(比如:scrapy crawl mycommand
)
可以運行-s JOBDIR=crawls/somespider-1
例子:
創建一個目錄commands
,你必須scrapy.cfg
文件 目錄中創建一個文件mycommand.py
from scrapy.command import ScrapyCommand
from scrapy.cmdline import execute
class Command(ScrapyCommand):
requires_project = True
def short_desc(self):
return "This is your custom command"
def run(self, args, opts):
args.append('scrapy')
args.append('crawl')
args.append('spider')##add what ever your syntax needs.In my case i want to get "scrapy crawl spider" in cmd
execute(args)#send a list as parameter with command as a single element of it
現在轉到cmd行並鍵入scrapy mycommand
。然後你的魔法準備:-)
編輯的話題,使得新的更相關的.. – Nabin