在Heroku上运行Python Worker - 推送失败

时间:2017-09-23 23:21:53

标签: python-3.x heroku web-scraping worker

我的范围是通过cron作业在云中运行python脚本(它会从网站中删除文本并将其保存在csv文件中)。 为此,我选择了Heroku。

我被困了,因为当我尝试部署工作时,我得到了推送拒绝。

这是我做的: 我将scrapit.py和Procfile(' worker:node scrapit.py')放在一个目录中。

然后在heroku中创建应用程序后,我从上面的目录发送以下命令:

$ heroku login
$ git init
$ heroku git:remote -a app-name-on-heroku
$ git add .
$ git commit -am "nth time :("
$ git push heroku master

我收到以下消息:

  

计数对象:41,完成。 Delta压缩最多使用4个线程。   压缩对象:100%(36/36),完成。书写对象:100%   (41/41),12.97 KiB | 0字节/秒,完成。总计41(delta 6),重复使用0   (delta 0)remote:压缩源文件......完成。远程:建筑   来源:远程:远程:----->应用程序与buildpack不兼容:   https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/python.tgz   远程:更多信息:   https://devcenter.heroku.com/articles/buildpacks#detection-failure   遥控器:遥控器:!推送失败的远程:验证部署...   遥控器:遥控器:!推送被拒绝到app-name-on-heroku。远程:到   https://git.heroku.com/app-name-on-heroku.git! [远程拒绝]   主人 - > master(pre-receive hook拒绝)错误:无法推送   一些人提到https://git.heroku.com/app-name-on-heroku.git'

错误之后我发送了这个命令:

heroku buildpacks:set heroku/python

但仍然推动被拒绝

1 个答案:

答案 0 :(得分:1)

每个Heroku buildpack指定一个bin/detect文件,让平台知道该buildpack是否可以与该应用程序一起使用。

python buildpack要求:requirements.txtsetup.pyPipfile存在。
您需要创建(并正确配置)其中一个文件才能构建您的python应用程序。