利用pyinstaller打包streamlit移植到其他电脑上使用,模块缺失

pyinstaller打包streamlit同普通的Python程序打包不一样,一不小心就会打包失败,在我的自己的一个工作项目中,需要打包一个包含cv2包的程序,打包完成了,结果运行的时候提示没有cv2模块,然后就在网上各种寻找,各种测试。参考利用pyinstaller打包streamlit移植到其他电脑上使用这篇文章还有别的相关文章,终于解决模块缺失的问题。

因为是有引入streamlit,所以打包的时候用.spec文件打包,解决模块缺失是在.spec文件配置中进行修改,在Analysis配置信息的hiddenimports字段写入缺失的模块(前提是未打包文件是可以运行的)示例如下(根据自己的实际情况填写内容):

a = Analysis(
    ['run_webprocess.py'],
    pathex=['.'],
    binaries=[],
    datas=datas,
    hiddenimports=['cv2','mathAdjust','StringAdjust'],
    hookspath=[],
    hooksconfig={},
    runtime_hooks=[],
    excludes=[],
    noarchive=False,
)

上示例中的"mathAdjust","Stringadjust"是自己编写的类,在打包的时候,没有配置,打包完也是找不到相关模块的,所以要提前配置。配置完成后再次打包.spec文件,就可以正常运行了。

希望本文可以帮到pyinstaller打包streamlit中遇到问题的人。

  • 12
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值