Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何正确地将参数传递给scrapinghub上的scrapy spider?_Scrapy_Scrapy Spider_Scrapinghub - Fatal编程技术网

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

如何正确地将参数传递给scrapinghub上的scrapy spider?,scrapy,scrapy-spider,scrapinghub,Scrapy,Scrapy Spider,Scrapinghub,我试图通过以下方式将参数传递给我的spider(理想情况下是数据帧或csv): 我尝试使用*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

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

我尝试使用*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 
我认为有一些简单的解释,我似乎无法理解


提前谢谢

对于传递参数和标记,您可以这样做

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
                    )

感谢anwswer,但我仍然有同样的问题,我只能访问列表的最后一个元素。也许蜘蛛只能接受字符串参数?我用了job_args的论点。有没有办法将列表发送给爬行器?或者我需要将我的csv序列化为字符串吗?我没有解开你的问题,如果你在scrapinghub上搜索如何将参数传递给scrapy spider,我给了你一个适合我的示例,如果不是你的问题,meMy的问题是:如何正确地传递参数,以便打印整个列表而不是最后一个元素,我对您的方法有相同的结果,但我找到了另一个解决方案。谢谢你的回复!我的方法很好地回答了您的问题:)如果您找到了其他解决方案,请在其他人有相同问题时发布您的方法:)
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
                    )