一、Python文件 打包 成 .exe 可执行文件
第一步:安装pyinstaller
首先安装pyinstall,使用命令:pip3 install pyinstaller,当然有可能报错,如下图:
在大量访问网页时,有可能出现这种报错,是由于频繁访问网站或发出请求造成的。往往网络太卡,例如:下载速度几kb每秒,太慢了,恰好下载的文件又太大就很容易出现这种情况。
这个时候,我们可以 更换国内源 进行安装,使用命令
:
// 安装 pyinstaller
pip install pyinstaller -i http://pypi.douban.com/simple --trusted-host=pypi.douban.com
安装成功 如下图所示:
第二步:pyinstaller 打包 .exe
1、首先,cmd 进入要打包的 .py 文件所在目录,使用命令:pyinstaller -F 文件名.py 如果想自定义图标,可以使用命令:pyinstaller -F -i 图标名.ico 文件名.py
2、打包完成,会出现 successfully 标志,接着会生成一个目录结构,需要的 .exe 文件,就在 dist 文件夹中,如下图所示:
接下来,双击运行就可以了!
二、将.exe可执行文件 反编译 成 .py文件
第一步:准备需要的软件
1、下载 pyinstxtractor.py 反编译项目。
2、下载 wxMEdit 16进制编辑器
3、安装 uncompyle 支持包,安装命令 pip install uncompyle6
第二步:进行 反编译
1、将下载好的 pyinstxtractor.py 文件 和要进行反编译的 .exe 文件 放在同一文件夹下,如下图:
2、直接 CMD 进入该路径,然后输入 python pyinstxtractor.py 文件名.exe 如下图:
执行完成后,该文件夹下会出现 文件名.exe_extracted 文件夹:
3、打开文件名.exe_extracted 文件夹,找到 struct 文件,以及 文件名 同名文件(本例文件名为 demo )。
之后用下载好的 wxmedit 软件打开它们,可能会出现两种情况:
- 情况一:struct 文件中, E3 前 有内容:
这种情况直接复制 struct 文件中,E3 之前的 所有内容,到 demo 文件 E3 之前(鼠标放到 E3 之前再粘贴),然后 保存文件。
- 情况二:struct 文件中, E3 前 无内容:
这个时候需要使用 wxmedit 软件 打开 PYZ-00.pyz_extracted 文件夹中任意一个 .pyc 文件:
记住文件中 前 4 个值,动手在 demo 文件中 E3 之前添加这些内容,第一行 剩余位置全部补 “00” (共 12 个 “00”):
最终结果如上图所示,完成后 保存文件。
4、将 demo 文件复制到上级目录,并更改后缀名为 .pyc ,得到demo.pyc 文件:
5、直接 CMD 进入demo.pyc 文件路径,然后输入 uncompyle6 文件名.pyc > 文件名.py ,然后回车,如下图:
未报错,则 反编译 成功,得到 源代码:
第一篇文章,完结撒花~~