在scrapy中将json参数传递给蜘蛛

时间:2014-07-05 17:58:29

标签: json scrapy parameter-passing scrapyd

我应该向一个蜘蛛传递一些从json文件中获取的参数。我已经读过可以通过scrapyd使用schedule.json,但我不知道如何传递json文件。有人有经验吗?

2 个答案:

答案 0 :(得分:6)

您不使用JSON文件传递参数。 Scrapyd有一个JSON API,您可以在其中传递参数。 (例如$ curl http://localhost:6800/schedule.json -d project=myproject -d spider=somespider -d myargument="value"

您可以处理通过kwargs传递的参数:

class MySpider(Spider):

    name = 'somespider'

    def __init__(self, *args, **kwargs):
        super(MySpider, self).__init__(*args, **kwargs)
        self.myargument = kwargs.get('myargument', '')

有关详细信息,请参阅http://scrapyd.readthedocs.org/en/latest/api.html

答案 1 :(得分:0)

我有同样的问题(我想将一个json文件传递给蜘蛛来实现一个简单的分布式爬行系统。

我只是通过将json文件转换为字符串作为scrapyd中的参数来解决它。

相关问题