2014-11-18 2 views
0

로컬 로컬 컴퓨터에 작업 스파이더가 있습니다. 로컬 스파이더는 로컬 포스트 그레스 데이터베이스에 항목을 씁니다.AWS EC2에서의 치료 : 항목 작성 위치는 어디입니까?

이제는 EC2 인스턴스에서 동일한 거미를 scrapyd를 통해 실행하려고합니다. 이것은 코드 (모델, 파이프 라인, 설정 파일)가 로컬 컴퓨터의 데이터베이스를 참조하기 때문에 분명히 작동하지 않습니다.

이 작업을 수행하기 위해 구현해야하는 적응 작업은 무엇입니까?

답변

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 
+1

여전히 데이터베이스에 항목을 저장하려면 RDS 서비스를 사용할 수도 있습니다. –

+0

이제 RDS에서 Postgres 인스턴스를 사용했습니다. 그리고 무료! –