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

如何通过pip将已安装库加入PyInstaller打包的可执行文件?

PyInstaller打包时包含pip安装库的解决方案

基础前置检查

  • 确认当前Python环境与PyInstaller归属一致:执行which python/where python(对应Linux/macOS/Windows)和which pyinstaller/where pyinstaller,确保输出路径相同。
  • 验证requirements.txt内依赖已安装:执行pip install -r requirements.txt,确保无安装失败提示。

强制导入缺失依赖(快速解决)

针对PyInstaller自动检测不到的库,用--hidden-import参数强制纳入:

pyinstaller --hidden-import 库名1 --hidden-import 库名2 你的脚本.py

若依赖数量多,可将库名写入文本文件(如hidden_imports.txt,每行一个库名),再执行:

pyinstaller --hidden-import @hidden_imports.txt 你的脚本.py

用.spec文件定制打包配置

适合复杂项目,可复用配置:

  1. 生成初始.spec文件:
pyinstaller 你的脚本.py
  1. 打开生成的你的脚本.spec,找到hiddenimports字段,补充需要的库:
hiddenimports=['库名1', '库名2', '库名3'],
  1. 基于.spec文件重新打包:
pyinstaller 你的脚本.spec

虚拟环境正确操作流程

若用venv失败,按以下步骤重新操作:

  1. 创建并激活虚拟环境:
# Windows系统
python -m venv venv
venv\Scripts\activate

# Linux/macOS系统
python3 -m venv venv
source venv/bin/activate
  1. 在激活的虚拟环境内安装所有依赖和PyInstaller:
pip install -r requirements.txt
pip install pyinstaller
  1. 执行打包命令:
pyinstaller 你的脚本.py

注意:全程保持虚拟环境激活状态,避免调用全局环境的PyInstaller。

排查依赖缺失的方法

用调试参数定位未被纳入的模块:

pyinstaller --debug=imports 你的脚本.py

运行生成的可执行文件时,控制台会输出导入失败的模块名称,对应添加到--hidden-import或.spec文件的hiddenimports列表中。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 05:32:04