当前位置:  开发笔记 > 编程语言 > 正文

如何在Heroku上安排python脚本

如何解决《如何在Heroku上安排python脚本》经验,为你挑选了1个好方法。

我正在Heroku上部署一个脚本(一个Scrapy python one),我希望它在早上启动4次.

我可以通过连接到我的Heroku帐户(我有一个免费的计划)并在Windows命令行输入以下命令来运行它:

heroku run scrapy crawl sytadin

但是当我尝试通过Heroku Scheduler运行它时,我遇到了一些问题.它问我是否想写类似的东西$ rake.我rake之前从未使用过,是之前run还是之后使用的东西run?我应该heroku先使用关键字吗?

我不知道,我尝试的一切都失败了,正如我在日志中看到的那样:

2017-01-19T23:47:05.305039+00:00 heroku[scheduler.3450]: Starting process with command `python "sytadin" crawl`
2017-01-19T23:47:05.974030+00:00 heroku[scheduler.3450]: State changed from starting to up
2017-01-19T23:47:08.335845+00:00 heroku[scheduler.3450]: State changed from up to complete
2017-01-19T23:47:08.204289+00:00 app[scheduler.3450]: /app/.heroku/python/bin/python: can't find '__main__' module in 'sytadin'
2017-01-19T23:47:08.326081+00:00 heroku[scheduler.3450]: Process exited with status 1
2017-01-19T23:48:27.681890+00:00 app[api]: Starting process with command `python sytadin/sytadin.py crawl` by user scheduler@addons.heroku.com
2017-01-19T23:48:35.571615+00:00 heroku[scheduler.6352]: Starting process with command `python sytadin/sytadin.py crawl`
2017-01-19T23:48:36.156250+00:00 heroku[scheduler.6352]: State changed from starting to up
2017-01-19T23:48:37.424920+00:00 heroku[scheduler.6352]: Process exited with status 2
2017-01-19T23:48:37.360306+00:00 app[scheduler.6352]: python: can't open file 'sytadin/sytadin.py': [Errno 2] No such file or directory
2017-01-19T23:48:37.445476+00:00 heroku[scheduler.6352]: State changed from up to complete

正如你所看到的,我尝试了在网上找到的不同可能性,但它无法正常工作:(

对我的python脚本的任何猜测?:)



1> rdegges..:

Heroku调度程序基本上只做heroku run+你在那里键入的任何命令.

因此,在您的情况下,由于scrapy crawler在执行以下操作时成功运行:heroku run scrapy crawl sytadin,您可以创建要运行的调度程序规则:

scrapy crawl sytadin

那就行了=)

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有