2014-09-27 15 views
5

Ho creato un'applicazione in casperjs che ritaglia dati sportivi da un sito web.Esecuzione di casperjs per cronjob su heroku

Mi piacerebbe eseguire questa applicazione per cronjob su heroku, per salvare i risultati sportivi in ​​un csv, database o documenti google esterni (non è ancora stato deciso).

Tuttavia, ho una domanda prima di iniziare per la sua attuazione per Heroku:

  • ho trovato questo buildpack per heroku, che sostiene che è possibile eseguire casperjs scirpts. Tuttavia, ho bisogno di nodejs per eseguire lo script pianificato? O posso semplicemente creare un cronjob su heroku?

Apprezzo molto le vostre risposte!

risposta

4

È sicuramente possibile eseguire il tuo script come un processo Cron su heroku.

Fase 1 - Creare l'applicazione utilizzando il buildpack citato:

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

Fase 2 - Aggiungi scheduler e accedere Addons:

heroku addons:add logentries 
heroku addons:add scheduler 

Fase 3 - aprire l'utilità di pianificazione:

heroku addons:open scheduler 

o utilizzare il cruscotto, fare clic su Risorse Applicazioni> Informazioni Generali> Programmi relazionati> Scheduler

Fase 4 - Imposta il tuo cronjob:

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

e scegliere la frequenza che si desidera lo script per l'esecuzione a.

Spero che aiuti!

+0

È possibile salvare l'output da 'casperjs' a un csv su heroku? Questo è permesso anche? Apprezzerei la tua risposta! – mrquad

+0

Sfortunatamente non è possibile, il filesystem di heroku è di sola lettura. Vedo 2 soluzioni, o scrivi le informazioni su un db (heroku usa postgresql) e puoi esportare facilmente in csv. O carichi direttamente dal tuo script su un altro server. Non sono sicuro di quale di questi sarebbe il più semplice sapendo che non stai usando node.js ... Forse dai un'occhiata a https://github.com/leesei/heroku-casper-node e vedi se può darti idee – xShirase

+0

Thx per la tua risposta! Ho guardato attraverso il link che hai condiviso con me, tuttavia, questo non risolve il mio problema. Una soluzione che potrei usare potrebbe essere quella di creare un foglio google in cui inserisco i miei dati via json. Qualche consiglio se è possibile con Casper? Apprezzerei anche ad esempio per accettare la tua risposta! – mrquad