当前位置:首页 » 存储配置 » pyinstaller如何自定义配置打包

pyinstaller如何自定义配置打包

发布时间: 2024-04-16 22:51:54

A. python桌面应用(pyinstaller打包多个py文件)

一 、当写这篇文章的时候,pyinstaller官网版本对pyqt5打包可能会遇到Could not find QtWebEngineProcess.exe.的错误。解决方法为:

二 、如果有报错:“could not find or load the Qt platform plugin "windows" ”。原因之一可能是你把打包后的文件放在了中文目录下。只需要将打包后的文件放在英文目录下,就可以解决。

三、 多文件打包为单一文件时,即pyinstaller 命令中加入了-F,也可能会导致错误。尽量不要使用-F。

使用pyinstaller打包的时候,仅打包.py文件,其余依赖项只需在打包完成后,拷入打包生成的根目录即可。

命令格式如下,下命令为一条命令,为方便显示做了分行处理:

以上文图中结构为例,在根目录打开命令窗口,输入命令:

在目录结构:“程序根目录\dist\main\” 下可以找到生成的main.exe。将其他依赖文件拷贝进入“程序根目录\dist\main\” 下,即可运行。
=========吃鸡、撸码复古键盘=========

B. 使用Pyinstaller打包成EXE文件

pyinstaller能够在Windows、Linux等操作系统下将Python脚本打包成可直接运行程序。使Python脚本可以在没有安装Python的环境中直接运行,方便共享。

python 2.7.12 + Windows7

1.待转换的.py文件绝对路径最好不要包含中文字符。容易出现一些莫名其妙的问题。

2.python中需要有.py文件中用到的第三方库。否则在转换后的.exe文件中会出现不符合预期的结果。

1.配置pip镜像源。

在用庆族户家目录下创建pip目录和pip.ini文件。方法如下

step1: 获取HOMEPATH变量对应的路径,执行 set HOMEPAT H也可以执行 echo %HOMEPATH% 获取。

上述结果说明用户家目录HOMEPATH对应的路径为C:UsersAdministrator。

step2: 在C:UsersAdministrator目录下创建pip目录,斗启并在pip目录下创建pip.ini文件。如果已经有pip目录和pip.ini文件,跳过。 特别说明的是,pip.ini文件的后缀是.ini,注意隐藏扩展文件誉销弊名可能造成的影响。 在pip.ini文件中添加相关内容并保存:

step3: 测试pip工具,确认是否能够自动安装第三方库,如使用pip自动安装Pexpect类库。

step4: 进入python工具,执行import pexpect导入模块命令,没有报错说明pip自动安装pexpect库成功。

step5: 结束安装,后续安装第三方库就可以在任意路径下直接执行pip install ${PackageName}进行安装。

2.打开cmd命令行窗口,输入 pip install pyinstaller ,安装pyinstaller库。

3.确认pyinstaller安装结果,位于c:Python27Scripts路径下。执行 where pyinstaller 查看

pyinstaller [options] script

例如: pyinstaller -F myscript.py

options常用选项说明:

pyinstaller其实就是把python解释器和脚本打包成一个可执行文件,和编译成真正的机器码是完全两回事。所以打包不一定会提高运行效率,可能会降低运行效率,但是好处是在运行者机器上不用安装python和脚本所依赖的库。
输入指定的脚本后,首先pyinstaller会分析该脚本所依赖的其他依赖,然后进行查找、复制,把所有相关的依赖都收集起来并进行加密处理,包括python解释器,最后把这些文件放在一个目录下,或者打包到一个可执行文件,然后就可以直接运行所生成的可执行文件。
需要注意的是,使用pyinstaller打包生成的可执行文件,只能再和打包机器系统相同的环境下运行。32位python环境打包的程序可以运行在32/64位windows系统上。64位python环境打包的程序只能运行在64位windows系统上。所以如果想打包程序的话,建议使用32位python环境打包。

1.确认待转换的.py文件可正确运行,不存在语法错误。如ccc.py

2.执行 pyinstaller -F ${Python脚本名} 完成文件转换。.exe文件生成的绝对路径会在倒数第二行显示,通常位于当前目录下dist所在目录下。转换后的.exe文件名与python文件名相同。如下图所示

1.如果Python脚本使用到了第三方库,如何打包?
方法一:将第三方库对应的包复制到待打包python脚本的同目录下,再执行打包命令。
方法二:pyinstaller.exe -F 路径文件名.py 路径文件名.py

2.我的python脚本主要是命令行输出,但是程序执行完就退出无法查看相关信息,如何处理?
在python脚本最后一行添加命令:os.system('pause') 或者 raw_input('Press enter any key to exit...')

3.我想给我的打包后的执行程序换个图标,如何处理?
使用参数-i。如命令:pyinstaller -F -i tupianqq.ico ccc.py。文件后缀名必须是.ico

4.程序运行出现CMD窗口,如何去除?
带上参数-w即可。pyinstaller.exe -F call_login.py -w (-w表示去掉控制台窗口显示)

5.pip配置镜像源参考

C. Python项目文件(多个子文件,.py文件等)如何用pyinstaller打包为可执行exe文件

文件构成

使用pyinstaller打包的时候,仅打包.py文件,其余依赖项只需在打包完成后,拷入打包生成的根目录即可。

多文件打包

命令格式如下,下命令为一条命令,为方便显示做了分行处理:

pyinstaller [主文件] -p [其他文件1] -p [其他文件2]
--hidden-import [自建模块1]
--hidden-import [自建模块2]
# 以上为一整条命令

以上文图中结构为例,在根目录打开命令窗口,输入命令:

pyinstaller main.py -p mysql.py -p other.py --hidden-import mysql --hidden-import other

在目录结构:“程序根目录distmain” 下可以找到生成的main.exe。将其他依赖文件拷贝进入“程序根目录distmain” 下,即可运行。

D. 如何使用pyinstaller打包python文件为exe文件

一、下载pyinstaller
我使用的版本为PyInstaller-2.1,支持python版本2.3-2.7

二、安装pyinstaller
下载完成后,解压即可。我的解压目录为D:\Python27\PyInstaller-2.1\

三、使用pyinstaller打包.py成.exe应用程序
1.注意使用前要安装pywin32,点击这里下载。

2.将需要打包的.py放到PyInstaller-2.1目录下,如下图所示。

在命令行,cd进入可执行python命令的目录,执行命令:python pyinstaller.py [opts] yourprogram.py
主要选项包括:
-F, –onefile 打包成一个exe文件。
-D, –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)。
-c, –console, –nowindowed 使用控制台,无界面(默认)
-w, –windowed, –noconsole 使用窗口,无控制台
更详细的使用方法可以参考下载包里的doc目录下的Manual.html文件。

具体操作:
python pyinstaller.py-F sina_crawler.py

实际操作:(其实就是注意文件路径,我的pyinstaller安装目录D:\Python27\pyinstaller-2.1\)
cd到d:\Python27\目录下,然后命令:
python pyinstaller-2.1\pyinstaller.py -F pyinstaller-2.1\sina_crawler.py

如果最后出现Appending archive to EXE,则生成成功。

注意会生成(均在Python27目录下):
1. dist文件夹(包含生成好的sina_crawler.exe)
2.build文件夹(中间生成,没用,事后可以删掉)
3.sina_crawler.spec文件(中间生成,没用,事后可以删掉)

热点内容
opensslcmake编译 发布:2024-09-08 09:08:48 浏览:652
linux下ntp服务器搭建 发布:2024-09-08 08:26:46 浏览:742
db2新建数据库 发布:2024-09-08 08:10:19 浏览:171
频率计源码 发布:2024-09-08 07:40:26 浏览:778
奥迪a6哪个配置带后排加热 发布:2024-09-08 07:06:32 浏览:101
linux修改apache端口 发布:2024-09-08 07:05:49 浏览:209
有多少个不同的密码子 发布:2024-09-08 07:00:46 浏览:566
linux搭建mysql服务器配置 发布:2024-09-08 06:50:02 浏览:995
加上www不能访问 发布:2024-09-08 06:39:52 浏览:811
银行支付密码器怎么用 发布:2024-09-08 06:39:52 浏览:513