如何在scrapinghub上正确地将参数传递给scrapy spider?

时间:2018-05-17 09:12:59

标签: scrapy scrapy-spider scrapinghub

我试图通过以下方式将参数传递给我的蜘蛛(理想情况下是Dataframe或csv):

self.client = ScrapinghubClient(apikey)
self.project = self.client.get_project()
job = spider.jobs.run()

我尝试使用* args和** kwargs参数类型,但每次我只得到最后一个结果。例如:

data = ["1", "2", "3"]
job = spider.jobs.run(data=data)

当我尝试从蜘蛛内部打印时,我只得到元素3:

def __init__(self, **kwargs):
     for key in kwargs:
        print kwargs[key]



2018-05-17 08:39:28 INFO    [stdout] 3 

我认为有一些简单的解释,我似乎无法理解。

提前致谢!

1 个答案:

答案 0 :(得分:1)

对于传递参数和标签,你可以这样做

priority = randint(0, 4)
job = spider.jobs.run(
                        units=1,
                        job_settings=setting,  
                        add_tag=['auto','test', 'somethingelse'], 
                        job_args={'arg1': arg1,'arg2': arg2,'arg3': arg3},
                        priority=priority
                    )