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

Amazon ec2 AWS EC2上的Scrapy:在哪里写入项目?,amazon-ec2,scrapy,scrapyd,Amazon Ec2,Scrapy,Scrapyd,我在本地机器上有一个工作的spider,它将项目写入本地postgres数据库 我现在尝试在EC2实例上通过scrapyd运行同一个spider。这显然行不通,因为代码(模型、管道、设置文件)引用了本地计算机上的数据库 我应该实施哪些调整以使其正常工作 找到了答案,答案比我想象的要简单。在settings.py文件中,删除项目和数据库的设置。删除后,通过EC2上的scrapyd部署项目 默认情况下,项目现在将被写入JSON行。这可以用FEED_格式和FEED_URI覆盖: sudo curl h

我在本地机器上有一个工作的spider,它将项目写入本地postgres数据库

我现在尝试在EC2实例上通过scrapyd运行同一个spider。这显然行不通,因为代码(模型、管道、设置文件)引用了本地计算机上的数据库


我应该实施哪些调整以使其正常工作

找到了答案,答案比我想象的要简单。在settings.py文件中,删除项目和数据库的设置。删除后,通过EC2上的scrapyd部署项目

默认情况下,项目现在将被写入JSON行。这可以用FEED_格式和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

如果您仍然想将项目存储到数据库中,您也可以使用RDS服务。现在,使用RDS上的Postgres实例,您已经做到了这一点。而且是免费的!