Python Pyinstaller 打包程序及遇到的问题总结
一、如何打包py程序
1、安装打包模块
pip install pyinstaller
2、定义保存包的路径 CMD ,CD
比方:把最终*.exe运行文件,保存到H盘 install 文件夹下。
输入: H: CD [自己定义文件名]

3、打包生成
红字是我的py程序所在路径,--noconsol 是屏蔽黑色的控制窗口。
pyinstaller -F E:\PythonProgram\CSV\Call.py --noconsol
注意:*.py的路径中,文件夹中可以有中文,但是不能有空格。不然打包时报错。

执行命令后,exe文件自动生成在H盘下,build 文件可以删除掉。


4、给exe增加图标
pyinstaller -i E:\PythonProgarm\CSV\sun.ico -F E:\PythonProgarm\CSV\Call.py --noconsole
这里需要注意,程序复制到桌面才会有显示,另外上面的名字也可以写程序 pyinstaller -F -i sun.ico E:\PythonProgarm\CSV\Call.py --noconsole 前提是*.ico需要和*.py文件在同一文件夹下。

5、指令含义
一些常用的功能参数,官方手册可参考:https://pyinstaller.readthedocs.io/en/stable/

二、打包程序遇到的一些问题
问题1:关于32位和64位系统
如果是64位环境打包的程序,只能给64位的电脑使用。如果需要在32位电脑上运行怎么办呢?
比较粗暴的方法是:使用2台电脑一台构建32位的环境,一台构建64位的环境。如果需要在64位电脑上同时打包
下面这里有另外博主的一些方法可以参考。
转载链接: https://www.hellomao.top/2019/05/25/python_pyinstaller/
https://blog.csdn.net/allan2222/article/details/88035116
问题2:运行中出现 :ImportError: unable to find Qt5Core.dll on PATH
这个问题主要是PyQt5 bug导致的,按照一些方法添加PyQt5到系统变量表中,问题没有解决。我又再网上查了一些其它方法。

解决方案:参考链接:https://blog.csdn.net/zwyact/article/details/99778898
代码前加以下代码或者使用更新版本的PyQt5
import sys, os
if hasattr(sys, 'frozen'):
os.environ['PATH'] = sys._MEIPASS + ";" + os.environ['PATH']
问题3:安装不上PyQt5 5.13
执行以下命令 安装不上pyqt5
pip install PyQt5 -i https://pypi.douban.com/simple
解决方案:降低Python 版本,我自己测试安装32位Windos系统的Python 3.8 版本,在pip pyqt5 时,CMD安装不上,
安装Pytnon 3.7 版本没有问题。
Python Pyinstaller 打包程序及遇到的问题总结的更多相关文章
- python pyinstaller 打包程序报错解决
python打包exe,各种入坑 一.安装PyInstaller 1.安装pywin32 pip命令安装:pip install pywin32(推荐) 2.安装Pyinstaller pip命令安装 ...
- pyinstaller打包程序 带图片
首选说一下,这种打包方式只能在本电脑上使用运行正常 准备:.py文件:你的程序 gif文件:你要用的图片 第一步: 在上面文件所在目录打开cmd 输入 pyi-makespec FP.py 会生成一个 ...
- 关于pyinstaller打包程序时设置icon时的一个坑
关于pyinstaller打包程序时设置icon时的一个坑 之前在用pyinstaller打包程序的时候遇到了关于设置图标的一点小问题,无论在后面加--icon 或是-i都出现报错.查了下st ...
- python 使用pyinstaller打包程序
使用pyinstaller 打包.py脚本,在其他计算机可以直接运行,不需要python环境 安装pyinstaller库 pip install pystaller 打包程序 pyinstaller ...
- Python: pyinstaller打包exe(含file version信息)
最近项目上一直都是用Spyder直接运行.py文件的方式来执行每日的自动化程序,每天都要手动去点击Run来执行一次,所以考虑把.py文件直接打包成exe,然后用windows的task schedul ...
- Python进阶-打包程序为exe
操作系统:win7 x64 运行环境:Python3.5 安装PyInstaller 第一步:下载PyInstaller https://github.com/pyinstaller/pyinstal ...
- Pyinstaller 打包程序为可执行文件exe
Pyiinstaller打包 pyinstaller是python的一个第三方模块,使用它可以将pythnon程序打包为可执行文件,实现打包后的程序在没有python环境的机器上也可以运行.pyins ...
- python pyinstaller 打包exe报错
今天用python 使用pyinstaller打包exe出现错误 环境pyqt5 + python3.6 在导入pyqt5包之前加上如下代码 import sysimport osif hasattr ...
- Python PyInstaller 打包报错:AttributeError: 'str' object has no attribute 'items'
pyinstaller打包时报错:AttributeError: 'str' object has no attribute 'items' 网上查询,可能是setuptools比较老: 更新一下 p ...
随机推荐
- 用了这么久HTTP, 你是否了解Content-Length?
摘要: 理解HTTP协议... 原文:用了这么久HTTP, 你是否了解Content-Length和Transfer-Encoding ? 作者:朴瑞卿的博客 由Content-Length导致的问题 ...
- SQL Server存储过程数据库日志文件备份的脚本-干货
还是拿数据库AAAAAAAA为例子 CREATE PROC [dbo].[p_log_backupAAAAAAAA] @dbname sysname='', ...
- python-网络编程socket模块详解
# ### tcp 循环发消息 import socket # 1.创建一个对象 sk = socket.socket() sk.setsockopt(socket.SOL_SOCKET,socket ...
- Ubuntu下Xilinx Linux内核编译问题,出现“缺少ncurses”libraries
对官方提供的内核源码包进行解压缩,进入到内核目录,使用make menuconfig后,发现提示以下错误: *** Unable to find the ncurses libraries or th ...
- Druid-代码段-1-3
所属文章:池化技术(一)Druid是如何管理数据库连接的? 本代码段对应流程1.2,真正获取连接的执行: private DruidPooledConnection getConnectionInte ...
- myeclipse 9.0 破解方法,亲测可用
MyEclipse 9.0的破解方法,步骤如下: 1.破解公钥,确保MyEclipse没有开启,否则失败! 用WinRAR打开Common\plugins\com.genuitec.eclipse.c ...
- RabbitMQ学习笔记(七、RabbitMQ实战)
目录: 削峰 分布式事务 削峰: 利用RabbitMQ队列消费特性避免峰值下的DB访问,缓解连接压力,在DB释放连接后再去消息数据. 分布式事务: )XA协议:它是一个分布式事务协议,由事务管理器和资 ...
- pytroch中cp27m和cp27mu的区别及判别方法
python中m和mu的区别 从https://download.pytorch.org/whl中下载pytorch安装包时常会发现有相同版本的安装包有cp27m和cp27mu两种,其中cp27m是u ...
- Centos7源码编译安装PHP7.2(生产环境)
安装PHP依赖包,否则在编译的过程中可能会出现各种报错 # Centos 安装epel-release源并将系统包更新到最新版本 $ yum install epel-release-y $ yum ...
- fis3打包中的一些注意事项
1.在html文件中,如果在标签的style属性内添加路径,fis不会识别改路径并打包,如 2.fis主要针对静态文件进行打包.对其他文件打包会出现一些问题. 比如jsp页面.下面的例子script. ...