我应该向一个蜘蛛传递一些从json文件中获取的参数。我已经读过可以通过scrapyd使用schedule.json,但我不知道如何传递json文件。有人有经验吗?
答案 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中的参数来解决它。