一直听闻python写代码多快,一直没有尝试,最近用python抓取公司的后台管理系统,实现了自动登录与日志抓取,写起来很方便,但是想要实现GUI的界面,就用了pyqt5进行开发,打包时遇到了难题,打包出来的exe文件有60多m,使用上不太方便。
1、打包使用了pyinstaller,因为使用了ddddocr验证码识别,所以需要包含,upx用于压缩减少exe体积。(打包出来的exe还是很大,将近100+m)
pyinstaller --onefile --collect-all ddddocr --collect-all pyqt5_plugins --collect-all qt5_tools --collect-all qt5_applications --upx-dir=D:\Soft\upx-4.2.4-win64 .\getServerLog.py
2、nuitka 打包,能够将 Python 代码编译成 C 代码,并生成可执行文件,因为 C 语言在处理速度上优于 Python。经过 Nuitka 编译后的程序通常比使用解释器执行的原生 Python 代码快得多,打包出来的文件大小相对较小,有70+m。
nuitka --standalone --onefile --mingw64 --nofollow-imports --show-memory --show-progress --plugin-enable=pyqt5 --follow-import-to=ddddocr --include-qt-plugins=sensible,styles --follow-import-to=ui --output-dir=o .\getServerLog.py
如果要实现GUI界面配合python,使用以上方式都不太理想,受限与包体积大的弊端,如果只使用终端,使用python开发还是很便捷的。
3、最后选择了使用flutter开发GUI程序,但是有一些验证码识别功能就无法实现,只能替换成手动输入,打包出来的exe只有20+m,满足了使用需求。
flutter打包exe涉及dll文件和exe文件的合并记录一下
1、flutter build windows //打包dart文件打包结果位于build/windows/runner/Release文件夹下 2、使用Enigma Virtual Box文件进行dll、data、exe合并 3、选择exe文件,拖入dll文件、data文件夹,执行封包
辅助开发
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Qt | Cross-platform software development for embedded & d...
- 又应验了那句歌词. 不经历风雨, 怎么见得了彩虹. 安装过程略去不提, 仅提示: pip install pyin...