在Heroku部署Python应用时安装pandas失败求助
解决Heroku部署Python脚本时Pandas依赖安装失败问题
从构建日志可以看出,核心问题是pip依赖解析时不断回溯尝试旧版Pandas,最终触发Numpy编译失败。以下是针对性解决方案:
1. 锁定兼容的依赖版本,避免pip盲目回溯
在requirements.txt中明确指定经过验证的兼容版本,跳过pip的自动版本试探:
pip>=23.0 pandas==1.5.3 numpy==1.23.5 discord.py==2.1.0 py-tda-api==0.1.1 bdateutil==0.1 python-dotenv==0.21.1 pytz==2022.7.1 requests==2.28.2 tda-api==1.6.0 aiohttp==3.8.3 python-dateutil==2.8.2 websockets==10.4
这些版本匹配Python 3.9环境,且无需编译二进制包,直接使用预编译wheel安装。
2. 添加系统编译依赖(若仍出现编译错误)
Numpy编译需要系统级依赖,通过Heroku的apt buildpack安装:
- 在项目根目录创建
Aptfile,内容为:libatlas-base-dev gfortran - 执行命令添加apt buildpack(确保在Python buildpack之前):
heroku buildpacks:add --index 1 heroku-community/apt
3. 升级Python运行时版本
更新runtime.txt到日志推荐的安全版本:
python-3.9.16
4. 清除Heroku缓存,避免旧依赖干扰
执行以下命令清空缓存后重新推送:
heroku plugins:install heroku-repo heroku repo:purge_cache -a 你的应用名称 git push heroku main
内容的提问来源于stack exchange,提问作者user16950345
相关产品推荐
相关产品推荐

