python——pyinstaller生成exe基本使用和遇到的坑
1、安装
pip install pyinstaller
2、常规操作
在cmd界面(之前安装python或者anaconda的时候正确添加环境变量的话,是可以在cmd界面直接执行pyinstaller的)
pyintaller [选项] py文件路径
选项:
-F 生成单个可执行文件,而不是生成一个文件夹,里面都是dll文件
-w 去掉控制台窗口,如果是自己写的GUI程序,一般都要用这个,但如果是命令行程序,千万别用这个呀。
-p 你自己自定义需要加载的类路径,如果正确添加环境变量的话,这个是不需要的。
-i 指定可执行文件的图标,后面跟ico文件的路径即可
示例:
pyinstaller -F a.py
3、坑1
Cannot find existing PyQt5 plugin directories
Paths checked: C:/Users/ray/qtb-3.5-64/_b_env/Library/plugins
这个。。。原因我是感觉很迷。
受到大佬启发:https://blog.csdn.net/weixin_43116379/article/details/82316163
将pyqt5.dll和pyqt5qmlplugin.dll复制到报错的路径。虽然很迷为什么,但是确实解决了问题。(用资源管理器自带的搜索功能搜这两个文件)

4、坑2
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 110: invalid continuation byte
这个还是因为C语言(一般Python的底层是C)对中文的支持不太好。有些汉字无法正常编码。
受到大佬启发 https://blog.csdn.net/qq_41185868/article/details/80599390
1、删除所有中文注释
(程序里面的中文可以不删,亲测用下面的方法可以正常生成exe文件)
2、先在cmd界面中输入 chcp 65001,将控制台编码改成‘utf-8’,再直接使用pyinstaller -F a.py打包即可。
亲测可用,感谢大佬!
最终正常生成了exe文件,并且能正常运行。
不过在这我要吐槽。用了pandas,requests,re这些模块之后。。。生成的exe文件竟然这么大。据说它是把所有库都编译了一遍加到exe文件里了。
所以以后开发,能值引入函数的就只引入函数,尽量不要把整个库都引入。

python——pyinstaller生成exe基本使用和遇到的坑的更多相关文章
- 小白学Python(19): Pyinstaller 生成 exe 文件
python 默认并不包含 PyInstaller 模块,因此需要自行安装 PyInstaller 模块. 安装 PyInstaller 模块与安装其他 Python 模块一样,使用 pip 命令安装 ...
- python脚本生成exe程序
去年十一月换了新公司后,一直没闲着,马不停蹄地接不同的需求,一个版本一个版本的迭代,也没时间研究python了.十一休假归来,某日,老婆问金融量化需要学python吗?并分享了一个公众号文章,内容是吹 ...
- pyinstaller将python脚本生成exe
一.下载pyinstaller 二.生成exe 下载pyinstaller 1.在C:\python27\Scripts目录下打开cmd界面,执行命令:pip install PyInstaller ...
- pyinstaller生成exe文件失败
我的python是3.6,目前pyinstaller并不支持,有网友建议在Github上下载源码,用pyinstaller_develop文件夹替换pyinstaller安装位置下同名文件夹.这样做之 ...
- python3 pyinstaller生成exe文件过程问题解决记录
1.使用pip安装pyinstaller 2.在cmd打开需生成可执行文件的python文件所在文件夹 3.使用命令pyinstaller -F -w **.py (代码中有import其他模块的,只 ...
- Python: pyinstaller打包exe(含file version信息)
最近项目上一直都是用Spyder直接运行.py文件的方式来执行每日的自动化程序,每天都要手动去点击Run来执行一次,所以考虑把.py文件直接打包成exe,然后用windows的task schedul ...
- 利用pyinstaller生成exe文件碰到的一些问题及解决方法
在“开源图像标注工具labelme的安装使用及汉化”这篇博客中,使用pyinstaller将labelme项目的入口python文件main.py打包,生成了main.exe文件,可以在Windows ...
- python脚本生成exe可执行文件
1.先安装第三方插件: py2exe. Get py2exe from http://www.py2exe.org/ 在download里下载与自己python对应的版本 2.写一个测试python文 ...
- 利用pyinstaller生成exe之后,运行不能正常产生结果文件问题记录
https://segmentfault.com/q/1010000011284617/a-1020000011493026 在此链接已解决问题,现在在这里在详细记录一次 问题描述: 利用pychar ...
随机推荐
- linux 学习(三) php相关
五 php相关 配置文件位置 /etc/apache2/apache2.conf 1禁止列举目录 sudo vi /etc/apache2/sites-enabled/000-default 删除Op ...
- ASP.NET MVC Cookie 身份验证
1 创建一个ASP.NET MVC 项目 添加一个 AccountController 类. public class AccountController : Controller { [HttpGe ...
- PL/SQL12的安装与使用
楼主比较懒,直接放一个别人的链接吧,比较全面. 大致过程就是,下载pl/sql 下载oracle instance client 然后配置oci.dll 添加 一个连接具体数据库的 ...
- 打包上传appsto错误 ERROR ITMS-90087: 和WARNING ITMS-90080: 问题
第一个错误 (Hyphenate.framework可以看粗是环信问题) ERROR ITMS-90087: "Unsupported Architectures. The executab ...
- iOS开发CGRectGetMidX. CGRectGetMidY.CGRectGetMinY. CGRectGetMaxY. CGRectGetMinX. CGRectGetMaxX的使用
[iOS开发]iOS开发CGRectGetMidX. CGRectGetMidY.CGRectGetMinY. CGRectGetMaxY. CGRectGetMinX. CGRectGetMaxX的 ...
- JSP的小心得
问题:Web容器(例如Tomcat)是怎么来执行jsp文件的? 首先它会将放在webapps目录下的jsp文件(这里以hello.jsp为例)翻译成hello_jsp.java文件并编译为hello_ ...
- D - 湫湫系列故事——减肥记II
虽然制定了减肥食谱,但是湫湫显然克制不住吃货的本能,根本没有按照食谱行动! 于是,结果显而易见… 但是没有什么能难倒高智商美女湫湫的,她决定另寻对策——吃没关系,咱吃进去再运动运动消耗掉不就好了? 湫 ...
- Linux下安装google拼音输入法
首先安装fcitx,前几天看了很多在ubuntu上能够使用的输入法,有人推荐是搜狗输入法,毕竟是国产嘛,但是会有意外发生,比如说安装之后会产生输入的字符乱码,是一堆看不懂的东西,我就是因为遇到了,然后 ...
- Array-快餐管饱
一.如何获得一个数组? rsp: 1. [] 2.new Array() 3.str.split() ps:new Array()可以不加括号,其传一个参数代表数组长度,两个及以上就是初始化数组. ...
- 阅读《大型网站技术架构》,并结合"重大需求征集系统"有感
今天阅读了<大型网站技术架构:核心原理与案例分析>的第五.六.七章.这三张主要是讲述了一个系统的可用性.伸缩性和可扩展性.而根据文中所讲述的,一个系统的可用性主要是体现在这个系统的系统服务 ...