如何让芹菜与heroku和django dynamic scraper上的scrapy服务器协同工作?
我在建设我的第一个项目的过程中,包括刮痧。在我的开发服务器(windows)上一切都很好,但在heroku上有一些问题。我正在使用django dynamic scraper为我处理集成工作的分配 在windows上,我在单独的命令提示中运行以下命令:如何让芹菜与heroku和django dynamic scraper上的scrapy服务器协同工作?,django,scrapy,celery,django-celery,django-dynamic-scraper,Django,Scrapy,Celery,Django Celery,Django Dynamic Scraper,我在建设我的第一个项目的过程中,包括刮痧。在我的开发服务器(windows)上一切都很好,但在heroku上有一些问题。我正在使用django dynamic scraper为我处理集成工作的分配 在windows上,我在单独的命令提示中运行以下命令: : scrapy server : python manage.py celeryd -l info : python manage.py celerybeat 在heroku上,我运行以下命令: : heroku bash >herok
: scrapy server
: python manage.py celeryd -l info
: python manage.py celerybeat
在heroku上,我运行以下命令:
: heroku bash >heroku run scrappy server (solves app not found issue)
: heroku run python manage.py celeryd -l info -B --settings=myapp.production
实际的dejango应用程序没有错误或问题,我可以访问管理员网站。报废服务器运行:
: Scrapyd web console available at http://0.0.0.0:6800/
: [Launcher] Scrapyd started: max_proc=16, runner='scrapyd.runner'
: Site starting on 6800
: Starting factory <twisted.web.server.Site instanceat 0x7f1511f62ab8>
第一个问题:当触发运行爬行器的定期任务时,我在芹菜日志中得到以下错误
File "/app/.heroku/python/lib/python2.7/site-packages/dynamic_scraper/utils/ta
sk_utils.py", line 31, in _pending_jobs
resp = urllib2.urlopen('http://localhost:6800/listjobs.json?project=default')
...
...
File "/app/.heroku/python/lib/python2.7/urllib2.py", line 1184, in do_open
raise URLError(err)
URLError: <urlopen error [Errno 111] Connection refused>
芹菜
[config]
app: default:0x7fd4983f6310 (djcelery.loaders.DjangoL
transport: django://guest:**@localhost:5672//
results: database
concurrency: 4 (prefork)
[queues]
celery exchange=celery(direct) key=celery
提前谢谢,如果您需要更多信息,请告诉我。答案是:您不能在同一台主机上运行web应用程序、芹菜和scrapy服务器,并允许它们相互对话。但是,有两种方法可以通过heroku完成此设置 备选案文1:
localhost:6800
更改为myapp scrapy.herokuapp.com
[settings]
default = myapp.scraper.scrape.settings
[deploy]
#url = http://localhost:6800/
project = myapp
[config]
app: default:0x7fd4983f6310 (djcelery.loaders.DjangoL
transport: django://guest:**@localhost:5672//
results: database
concurrency: 4 (prefork)
[queues]
celery exchange=celery(direct) key=celery