在heroku上每个cronjob运行casperjs

Ann*_*lee 5 javascript heroku node.js phantomjs casperjs

我在casperjs中创建了一个应用程序,它可以从网站上删除运动数据.

我想在heroku上按照cronjob运行此应用程序,以将运动结果保存在csv,数据库或外部google文档中(尚未确定).

但是,在我开始为heroku实现它之前,我有一个问题:

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

我非常感谢你的回复!

xSh*_*ase 4

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

第 1 步 - 使用提到的构建包创建应用程序:

heroku apps:create myapp --stack cedar --buildpack http://github.com/misza222/heroku-buildpack-casperjs.git
Run Code Online (Sandbox Code Playgroud)

第 2 步 - 添加调度程序和日志插件:

heroku addons:add logentries
heroku addons:add scheduler
Run Code Online (Sandbox Code Playgroud)

第 3 步 - 打开调度程序:

heroku addons:open scheduler 
Run Code Online (Sandbox Code Playgroud)

或使用仪表板,单击我的应用程序 > 一般信息 > 插件 > 调度程序

第 4 步 - 设置你的 cronjob :

./vendor/casperjs/bin/casperjs myCasperScript.js
Run Code Online (Sandbox Code Playgroud)

并选择您希望脚本运行的频率。

希望能帮助到你!

  • 您不需要为您的评论提供示例即可接受答案。您最初询问是否需要 nodejs 来运行脚本,或者是否可以在 heroku 中创建 cronjob。您现在在评论中提出另一个问题。虽然@xShirase 很友善地引导您走向正确的方向,但在我看来,您的新问题最好用一个新的 SO 问题来解决。无意粗鲁,但问题继续从一件事变成另一件事似乎不合适。你问了一个问题,他回答了。 (2认同)
  • @thtsigma我完全同意你的观点,这些变形的问题发生得太频繁了。mrquad:如果你花时间写一个关于 SO 的正确问题,它会让你的大脑进入“研究”模式。很多时候,详细写下你的问题的过程会给你答案。话虽这么说,我会给你另一个想法:Casper 可以 POST 东西,所以你应该能够将数据发送到任何正确配置的端点,无论是 Google 表格还是你选择的服务器上的 php 脚本。 (2认同)