我的 Scrapy spider 托管在 scrapinghub。它通过运行蜘蛛 API 调用进行管理。蜘蛛从调用到调用的唯一变化是开始 url 列表。该列表可能从 100 个网址到数千个不等。在这种情况下更新起始网址的最佳方法是什么?据我所知,SH API 中没有直接的选项。我正在考虑使用 url 列表更新 MySql 并在更新后发送简单的运行作业 API 调用。(启动 url 将从 MySql 表中生成)。对此类解决方案或其他选项有何评论?
我目前的设置如下。
def __init__(self, startUrls, *args, **kwargs):
self.keywords = ['sales','advertise','contact','about','policy','terms','feedback','support','faq']
self.startUrls = startUrls
self.startUrls = json.loads(self.startUrls)
super(MySpider, self).__init__(*args, **kwargs)
def start_requests(self):
for url in self.startUrls:
yield Request(url=url)