社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

这个神器,把打包 Python 脚本为 exe 的流程都封装好了

进击的Coder • 5 年前 • 595 次点击  
这是「进击的 Coder」的第 484 篇技术分享
作者:Ckend
来源:Python 实用宝典

“

阅读本文大概需要 5 分钟。


”



Auto-py-to-exe 能够基于简单的 GUI 图形界面和 Python 中的 PyInstaller,将 .py 转换为 .exe,非常容易使用,适合那些需要在windows上直接执行py文件但又没有 Python 运行环境的情景。

1. 安装和使用



通过 PyPI 安装

你可以使用 PyPI 安装此项目:

pip install auto-py-to-exe


然后运行它,在终端中执行以下命令:

auto-py-to-exe


通过 GitHub 安装

git clone https://github.com/brentvollebregt/auto-py-to-exe.git
cd auto-py-to-exe
python setup.py install


然后运行它,在终端中执行以下命令:

auto-py-to-exe


在本地通过 Github 运行(无需安装)

你可以通过以下步骤在本地运行此项目:

1. 克隆/下载 https://github.com/brentvollebregt/auto-py-to-exe

2. 打开 cmd 或终端并 cd 到该项目

3. 执行以下命令:




    
python -m pip install -r requirements.txt


现在运行应用程序,执行:

python -m auto_py_to_exe


将在应用程序模式下打开一个 Chrome 窗口,并在其中运行本项目。


2. 使用本程序



1.选择您的脚本文件的位置(粘贴或使用文件浏览器),文件存在时轮廓将变为蓝色:



2. 选择其他选项并添加图标或附加文件之类的内容


3. 点击底部的蓝色大按钮进行转换

完成后当前终端所处目录的 output 文件夹中找到转换后的文件:


非常简单,大家有需要可以试试看。

参数使用

如果你不想使用可视化的 GUI,也可以通过参数创建:

auto-py-to-exe [-nc] [-c [CONFIG]] [-o [PATH]] [filename]


参数类型描述
filenamepositional在用户界面中预先填写“脚本位置”字段。
-nc, --no-chromeoptional使用默认浏览器打开用户界面。不会尝试寻找Chrome。
-nu, --no-uioptional不要试图在浏览器中打开界面。
-c [CONFIG], --config [CONFIG]optional提供配置文件(json)以预填充UI。这些可以在设置选项卡中生成。
-o [PATH], --output-dir [PATH]optional设置默认输出目录。


除非必要,我建议还是使用 GUI 的方式,用起来比命令行的形式方便许多。不过你如果需要批量创建 exe,那么确实参数形式更适合你。

导出导入配置

“设置”里有“配置导入和导出”部分,它可以将配置作为 JSON 字符串导出到剪贴板或文件,从而导出 UI 的当前状态。然后可以使用该 JSON 再次将配置导入到 UI 中,以重新填充所有字段。

3. 使用上出现问题



1.输出可执行文件很大

有时 pyinstaller 会自动添加它在你的环境中看到的包,即使你没有在被打包的项目中使用它们。这可能导致输出可执行文件的大小为数十到数百兆字节。

为了解决这个问题,最简单的方法是:

1.创建一个新的/干净的虚拟环境

2.将 auto-py-to-exe 安装到其中

3.为你的项目安装所需的模块

4.在这个虚拟环境中使用 auto-py-to-exe 来打包你的脚本

这样做意味着 pyinstaller 看不到你不需要捆绑的软件包,文件会被尽可能减小。

2.命令“python setup.py egg_info”失败,错误代码为 1

安装最新版 setuptools:

pip install --upgrade setuptools.


3.PermissionError: [Errno 13] 权限被拒绝: ...

发生这种情况是因为你试图修改无权访问的目录中的文件。

解决此问题的一种方法是通过以管理员身份打开 cmd 来运行具有管理员权限的脚本,然后 cd 到你希望输出的脚本的所在目录运行 auto-py-to-exe。

更多的问题,可以在这篇文章中尝试查找解决方案:https://nitratine.net/blog/post/issues-when-using-auto-py-to-exe/

End

「进击的Coder」专属学习群已正式成立,搜索「CQCcqc4」添加崔庆才的个人微信或者扫描下方二维码拉您入群交流学习。


看完记得关注@进击的Coder
及时收看更多好文
↓↓↓


崔庆才的「进击的Coder」知识星球已正式成立,感兴趣的可以查看《我创办了一个知识星球》了解更多内容,欢迎您的加入:



好文和朋友一起看~
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/120683