AWS EC2上的Scrapy:在哪里写项目?

时间:2014-11-18 23:25:40

标签: amazon-ec2 scrapy scrapyd

我的本​​地计算机上有一个正在运行的蜘蛛,它将项目写入本地postgres数据库。

我现在正试图在EC2实例上通过scrapyd运行相同的蜘蛛。这显然不起作用,因为代码(模型,管道,设置文件)引用我本地计算机上的数据库。

我应该采用哪些改编来实现这项工作?

1 个答案:

答案 0 :(得分:1)

找到它,答案比我想象的要容易。在settings.py文件中,删除ITEM_PIPELINES和DATABASE的设置。删除后,在EC2上通过scrapyd部署项目。

默认情况下,项目现在将写为JSON行。这可以用FEED_FORMAT和FEED_URI覆盖:

sudo curl http:/xxxxxxxxx.us-west-2.compute.amazonaws.com:6800/schedule.json -d project=xxxxxxxxxx -d spider=xxxxxxxxx -d setting=FEED_URI=/var/lib/scrapyd/items/xxxxxxxxxx.csv -d setting=FEED_FORMAT=csv