2014-09-27 111 views
5

我在casperjs中创建了一个应用程序,该应用程序从网站中删除运动数据。在heroku上运行每个cronjob的casperjs

我想运行这个应用程序每个cronjob在heroku上,以保存在csv,数据库或外部谷歌文档(还没有决定)的体育成绩。

不过,我有一个问题之前,我开始实施它的Heroku:

  • 我发现这个buildpackheroku,它声称,它可以运行casperjs scirpts。但是,我是否需要nodejs来运行预定的脚本?或者我可以在heroku上创建一个cronjob?

我真的很感谢你的回复!

回答

4

您绝对可以将您的脚本作为heroku上的Cron作业运行。

步骤1 - 创建使用所提到的buildpack该应用:

heroku apps:create myapp --stack cedar --buildpack http://github.com/misza222/heroku-buildpack-casperjs.git 

步骤2 - 添加调度和日志插件:

heroku addons:add logentries 
heroku addons:add scheduler 

步骤3 - 打开调度程序:

heroku addons:open scheduler 

或使用仪表盘,单击我的应用>基本信息>附加组件>计划

第4步 - 设置你的cronjob:

./vendor/casperjs/bin/casperjs myCasperScript.js 

和选择的频率,你希望你的脚本在运行。

希望它能帮助!

+0

是否可以将'casperjs'的输出保存到heroku上的csv中?这甚至允许吗?我会很感激你的回答! – mrquad 2014-10-06 08:36:14

+0

不幸的是,它不可能,heroku的文件系统是只读的。我看到2个解决方案,要么你把信息写入数据库(heroku使用postgresql),而且你可以轻松导出到csv。或者你直接从脚本上传到另一台服务器。我不知道哪一个这是最简单的知道你不使用node.js ...也许看看https://github.com/leesei/heroku-casper-node,看看它是否可以给你想法 – xShirase 2014-10-06 09:35:32

+0

Thx为您的答案!我查看了你与我分享的链接,但是,这并不能解决我的问题。我可以使用的一个解决方案可能是创建一个谷歌表,我把我的数据通过JSON英寸。任何建议,如果这是可能的casper?为了接受你的回答,我也会很感激你的回答! – mrquad 2014-10-06 13:01:48