PyInstaller入门(二)——__import__ ()无法被识别的问题和spec文件的使用

本文详细介绍了PyInstaller在处理`__import__()`格式的导入时遇到的问题,以及如何通过编辑spec文件和添加hook文件来解决。同时,文章还探讨了spec文件的用途,包括如何在spec文件中添加数据文件和处理模块内的数据文件,以确保它们在打包过程中被正确包含。
摘要由CSDN通过智能技术生成

pyinstaller无法识别问题

为了找出你的python文件的所有依赖项,pyinstaller会查看你的python脚本中所有的import声明 ,找到所有导入的模块,直到拥有了你的python脚本执行所需的所有模块的完整列表。
PyInstaller可以识别出python包常用的”egg”格式,所以,如果你的脚本是从一个”egg”中导入一个模块,那么pyinstaller将会把egg和它的依赖项一并添加进来。
一些常用的GUI包目前也都被pyinstaller支持,例如:Qt,WxPython, TkInter, Django等等。
或许你的一些脚本中使用了import()等格式的导入,这是pyinstaller无法识别的包导入格式,或者在运行时操作sys.path的值等等。这些都是pyinstaller无法直接识别的。需要你手动做一些其他的工作帮助pyinstaller识别这些内容。

  • 通过向pyinstaller添加需要的文件或者路径
  • 编辑 你的文件名.spec文件来添加pystaller无法自动识别的内容(后续将详细介绍)
  • 写hook文件来提醒pyinstaller那些隐藏的import

使用命令行添加未识别的import模块

pyinstaller –hidder-import=ModuleName hello.py

spec文件的使用

当你执行

pyinstaller options.. myscript.py

的时候,pyinstaller做的第一件事情就是生成一个myscript.spec文件

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值