完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误


Posted in Python onApril 01, 2020

报错信息

最近闲来无事,用python的tkinter库开发了一款带日程提醒的万年历桌面程序。在程序开发结束开始打包时,却发现一直报错

PyInstaller cannot check for assembly dependencies.
Please install PyWin32 or pywin32-ctypes.
pip install pypiwin32

但是运行pip install pypiwin32时却提示两个库都已经安装过了

可是当再运行打包脚本时就是死活无法打包,就是提示缺少上面两个依赖库。

各种度娘发现都没有遇到类似奇葩情况的。

于是决定自行解决,首先根据错误关键词到pyinstaller的源码中去检索报错位置。

最终发现是因为导包问题引起的,两个依赖库确实已经安装只是导入方式不同导致报错。

解决方案

在python安装路径下找到Lib/site-packages/Pyinstaller目录下有个compat.py文件定位到212行

源码如下:

if is_win:
  try:
    from win32ctypes.pywin32 import pywintypes # noqa: F401
    from win32ctypes.pywin32 import win32api
  except ImportError:
    xxxx
    xxxx

做如下修改:将两个from改为import

if is_win:
  try:
    # from win32ctypes.pywin32 import pywintypes # noqa: F401
    # from win32ctypes.pywin32 import win32api
    import pywintypes
    import win32api
  except ImportError:
    xxxx
    xxxx

然后再重新运行打包脚本,打包成功

到此这篇关于完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误的文章就介绍到这了,更多相关pyinstaller打包报错找不到pypiwin32内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python 遍历列表里面序号和值的方法(三种)
Feb 17 Python
python django事务transaction源码分析详解
Mar 17 Python
详解python3中socket套接字的编码问题解决
Jul 01 Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
Nov 29 Python
python实现守护进程、守护线程、守护非守护并行
May 05 Python
python实现给scatter设置颜色渐变条colorbar的方法
Dec 13 Python
python远程连接MySQL数据库
Apr 19 Python
详解Python3序列赋值、序列解包
May 14 Python
详解numpy.meshgrid()方法使用
Aug 01 Python
阿里云ECS服务器部署django的方法
Aug 29 Python
Python中and和or如何使用
May 28 Python
Python getattr()函数使用方法代码实例
Aug 10 Python
Python greenlet和gevent使用代码示例解析
Apr 01 #Python
Django-rest-framework中过滤器的定制实例
Apr 01 #Python
Python如何操作office实现自动化及win32com.client的运用
Apr 01 #Python
Django之choices选项和富文本编辑器的使用详解
Apr 01 #Python
Python AutoCAD 系统设置的实现方法
Apr 01 #Python
django实现模型字段动态choice的操作
Apr 01 #Python
Python气泡提示与标签的实现
Apr 01 #Python
You might like
递归删除一个节点以及该节点下的所有节点示例
2014/03/19 PHP
php中将一段数据存到一个txt文件中并显示其内容
2014/08/15 PHP
PHP实现绘制3D扇形统计图及图片缩放实例
2014/10/01 PHP
ThinkPHP 整合Bootstrap Ajax分页样式
2016/12/23 PHP
jQuery EasyUI 中文API Layout(Tabs)
2010/04/27 Javascript
javascript中substr,substring,slice.splice的区别说明
2010/11/25 Javascript
js字母大小写转换实现方法总结
2013/11/13 Javascript
js中回调函数的学习笔记
2014/07/31 Javascript
什么是MEAN?JavaScript编程中的MEAN是什么意思?
2014/12/18 Javascript
javascript实现的登陆遮罩效果汇总
2015/11/09 Javascript
js实现页面a向页面b传参的方法
2016/05/29 Javascript
JS中的hasOwnProperty()、propertyIsEnumerable()和isPrototypeOf()
2016/08/11 Javascript
js绘制购物车抛物线动画
2020/11/18 Javascript
BootStrapTable 单选及取值的实现方法
2017/01/10 Javascript
Web纯前端“旭日图”实现元素周期表
2017/03/10 Javascript
JS实现异步上传压缩图片
2017/04/22 Javascript
使用Bootstrap4 + Vue2实现分页查询的示例代码
2017/12/21 Javascript
微信小程序scroll-view实现字幕滚动
2018/07/14 Javascript
vue使用v-if v-show页面闪烁,div闪现的解决方法
2018/10/12 Javascript
Vue.js实现tab切换效果
2019/07/24 Javascript
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
pyqt4教程之实现半透明的天气预报界面示例
2014/03/02 Python
python进阶教程之动态类型详解
2014/08/30 Python
python编程开发之类型转换convert实例分析
2015/11/13 Python
Python搭建APNS苹果推送通知推送服务的相关模块使用指南
2016/06/02 Python
Python处理json字符串转化为字典的简单实现
2016/07/07 Python
python去除空格和换行符的实现方法(推荐)
2017/01/04 Python
python 获取网页编码方式实现代码
2017/03/11 Python
python基于pyDes库实现des加密的方法
2017/04/29 Python
python中字符串内置函数的用法总结
2018/09/13 Python
Python-Seaborn热图绘制的实现方法
2019/07/15 Python
美国礼品卡交易网站:Cardpool
2018/08/27 全球购物
四年大学自我鉴定
2014/02/17 职场文书
河童之夏观后感
2015/06/11 职场文书
五年级语文教学反思
2016/03/03 职场文书
pandas 实现将NaN转换为None
2021/05/14 Python