我一直试图让我的python3 reddit bot在heroku上工作一段时间,但我一直遇到这个错误:
~ $ python3
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'
Aborted (core dumped)
当我在远程python3
会话(通过bash
)中运行heroku run bash
时,会发生这种情况。
heroku logs
输出:
2015-03-29T09:41:23.669871+00:00 heroku[bot.1]: Starting process with command `python3 allb.py`
2015-03-29T09:41:24.315878+00:00 heroku[bot.1]: State changed from starting to up
2015-03-29T09:41:24.978050+00:00 app[bot.1]: Fatal Python error: Py_Initialize: Unable to get the locale encoding
2015-03-29T09:41:24.978079+00:00 app[bot.1]: ImportError: No module named 'encodings'
2015-03-29T09:41:25.811735+00:00 heroku[bot.1]: State changed from up to crashed
2015-03-29T09:41:25.801807+00:00 heroku[bot.1]: Process exited with status 134
我已经尝试将运行时设置为3.4,并寻找解决方案,类似于问题。一些消息来源表示$PYTHONPATH
必须为零,而heroku上的$PYTHONPATH
的值为/app//
。
这可能是一些愚蠢的错误,但我找不到它。
答案 0 :(得分:1)
您需要在runtime.txt文件中指定您的python版本。
https://devcenter.heroku.com/articles/python-runtimes
然后在推动时你会看到:
遥控器:----->找到python-2.7.13,删除
遥控器:----->安装python-3.6.1