You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署Discord机器人时,因pip相关问题无法将GitHub分支部署到Heroku

问题根源与解决方法

为什么会出现这些错误?

  • pywin32/pypiwin32是Windows专属库:Heroku的运行环境是Linux容器,这类仅支持Windows的库在Linux上无法安装,也完全不需要。
  • pypiwin32旧版本兼容问题:你尝试的pypiwin32==219是Python2时代的版本,代码用了Python2的print语法(无括号),而Heroku使用Python3,因此触发语法错误。

解决步骤

  1. 删除Windows专属依赖
    打开本地的requirements.txt,删掉所有包含pywin32或pypiwin32的行——包括原来的pywin32==304,以及后来添加的pypiwin32==xxx。

  2. 推送更新到GitHub
    在本地终端执行以下命令,将修改后的文件推送到GitHub:

    git add requirements.txt
    git commit -m "移除Windows专属的pywin32依赖,适配Heroku Linux环境"
    git push origin main
    
  3. 重新部署到Heroku
    回到Heroku后台,要么等待Heroku自动检测GitHub更新并触发部署,要么手动点击「Deploy Branch」按钮重新部署主分支。

额外提示

以后生成requirements.txt时,尽量在干净的虚拟环境中安装必要依赖,避免混入本地Windows系统的专属库。可以用以下命令生成更干净的依赖列表:

pip freeze --exclude-editable > requirements.txt

内容的提问来源于stack exchange,提问作者Xiaolong Guo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 05:25:36