使用pyinstaller封装Python代码

来源:互联网 发布:思纬网络 编辑:程序博客网 时间:2024/05/22 00:06

使用pyinstaller封装代码的方法及报错处理,关于pyinstaller的一切都放在这里,有新内容就在这篇添加。

安装

使用pip安装,会自动下载所有依赖的包

pip install pyinstaller

也可以去官网下载后进入解压目录python setup.py install

pyinstaller依赖pywin32,可以先在shell下import win32com看看是不是已经有了,如果没有可到这里选择合适的版本。

打包

  1. 在源代码文件夹上,按住shift右键鼠标,选择“在此处打开命令窗口”

mark

  1. 输入打包命令,最简单的是pyinstaller program_name.py,pyinstaller会检测需要哪些依赖包,并一起打包。
C:\Users\Administrator\Desktop\crypto> pyinstaller ginterface.py

注意,只会检测需要安装的那些依赖包,自己敲的模块可不算,所以自己的模块一定要和”program_name.py” 放在一个文件夹,且这个文件夹中要有init.py 文件。

  1. 打包结束,文件夹中多出不少东西,如图所有不是.py后缀的都是新出现的,不过只有dist文件夹有用,里面有一个叫做ginterface的文件夹,点进去找到.exe文件打开,完美运行。

mark

  1. 把ginterface文件夹打个压缩包,放进U盘。皮皮虾,我们走!

其他参数

我的打包没什么要求,参数什么的都没用上,其实pyinstaller有不少参数,常用的有:

-F, –onefile 打包成一个exe文件。

-D, –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)。

-c, –console, –nowindowed 使用控制台,无界面(默认)

-w, –windowed, –noconsole 使用窗口,无控制台

-n 给EXE起个名字

-i 给EXE换个图标

具体的最好还是看看官方文档

报错

failed to create process

两个原因:
- python的安装路径有空格,比如我们常把软件安装在program files这个文件夹下
- 重命名过Python的安装路径

有空格的问题好解决,在Python文件夹下的Scripts中找到pyinstaller-scripts.py打开,把第一行的路径加上引号,如#!C:\Python34\python.exe改为#!"C:\Python34\python.exe",问题马上解决。

重命名过且牵扯过多没办法改回原路径名的话,可以看看stackoverflow上的这个问题

pywintypes.error:%1不是标准的win32应用程序

遇到这个问题是因为想给exe文件换个好看点的图标,把图标和代码放在一个文件夹,使用pyinstaller -i picture.ico file.py,每次都会在换图标这一步报错。在网上查才知道需要用ico图标才行,我这种随便一个图改后缀是行不通的,随便下载了一个轻量级转换软件,转换后再打包,就成功了。

0 0
原创粉丝点击