《 Python笔记》— 将pyinstalller打包封装的exe文件反编译为pyc文件和python文件
目录
- 将pyinstalller打包封装的exe文件反编译为pyc文件和py文件
- 1 提取.pyc文件
- 2 反编译
- 文件结构
- 更多内容
将pyinstalller打包封装的exe文件反编译为pyc文件和py文件
很多开发者没有发布源程序代码,而是将代码封装为exe可执行文件,这样不仅更有利于程序传播,方便了普通用户使用,而且相当于源程序更加保密或者说不公开自己的源码,但是对于同样也是开发者的话,就比较麻烦了。
那么难得真的就不能获得源码了吗,此时需要怎么办呢?
答案是:逆向反编译
对于用pyinstaller包将python程序代码打包封装的.exe文件怎么将其反编译出原始的python代码?
大体分为两步,提取.pyc文件和反编译,下面本文将提供详细步骤。
如何将Python程序打包为exe可执行文件?
请阅读另一篇文章:
https://blog.csdn.net/meenr/article/details/124549871
1 提取.pyc文件
第一步提取.pyc文件,从 .exe文件提取.pyc文件
首先需要用到pyinstxtractor.py脚本文件,从exe文件中提取出pyc文件。
1: 将.exe文件和pyinstxtractor.py文件放到同一路径下
pyinstxtractor.py文件的下载链接如下:
点击下载
https://pan.baidu.com/s/1J2FIomqpkIRm41JVJZy4Sw
提取码: 6yik
注:pyinstxtractor.py文件是一个专门用来反向解析pyinstaller打包的exe文件的脚本
2: 在当前路径下打开powershell 或 cmd命令行 cd 到该路径下
3: 在命令行中输入下面内容,并回车执行
python pyinstxtractor.py main.exe
运行完成后,在当前路径下回出现一个新的文件夹,打开则可以找到.pyc文件。
2 反编译
将获得的.pyc文件反编译为python程序
第1步: 安装uncompyle
pip install uncompyle
第2步:
文件所在文件目录执行如下命令:
uncompyle6 main.pyc > out.py
注:uncompyle6 包可以将python的二进制代码反向转换为python源代码
文件结构
以2贰进制小工具-批量给图片加水印应用程序(详见下面批量添加水印链接博文:批量添加水印)为例:
做如下总结:
exe文件通过pyinstxtractor.py脚本可直接反向编译为 → Watermark.pyc (Python二进制文件)
再通过uncompyle包将Watermark.pyc (Python二进制文件)转为 → out.py (Python源码)
更多内容
公众号地址:
https://mp.weixin.qq.com/s/ynG-dNNqO8kjIdf6ZFiZbg
CSDN主页地址:
https://blog.csdn.net/meenr
《 Python笔记》— 将pyinstalller打包封装的exe文件反编译为pyc文件和python文件相关推荐
- 将exe4j打包的java exe程序反编译过程
开始,我用了http://blog.csdn.net/lanximu/article/details/16879545的方法,但十六进制文件看着有乱码,试着截了几次进行压缩,但都不对,不管是用ultr ...
- 【干货】Python文件打包 .exe文件反编译
一.Python文件 打包 成 .exe 可执行文件 第一步:安装pyinstaller 首先安装pyinstall,使用命令:pip3 install pyinstaller,当然有可能报错,如下图 ...
- Python代码封装的可执行exe文件反编译为Py脚本
起因是笔者有个课,教图形图像学,作业的代码调不出老师的效果,于是就又有了hack的想法,把老师给的用来演示的exe文件反编译.主要是根据这篇文章的方法来的.将 exe 文件反编译成 Python 脚本 ...
- unity 打包的exe进行反编译
首先找到打完的exe包 然后依次打开 xxxxx _Data>Managed找到Assembly-CSharp.dll这个文件 反编译工具 dnSpy 请出反编译的工具 dnSpy 然后将这个d ...
- exe反编译为pyc,再反编译为py
第一步反编译:exe到pyc 参考这篇文章,写的很好:有个注意点就是pyc文件必须加文件头. pyinstaller打包的.exe文件反编译成.py文件 - no1r - 博客园 (cnblogs.c ...
- so文件反编译为python代码_【反编译系列】四、反编译so文件(IDA_Pro)
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 安卓应用程序的开发语言是java,但是由于java层的代码很容易被反编译,而反编译c/c++程序的难度比较大,所以现在很多安卓应用程 ...
- 初识Ildasm.exe——IL反编译的实用工具(转自Youngman)
Ildasm.exe 概要: 一.前言: 微软的IL反编译实用程序--Ildasm.exe,可以对可执行文件(ex,经典的控制台Hello World 的 exe 可执行文件)抽取出 IL 代码,并且 ...
- 【python】pyc文件反编译为py文件
需求:把项目里的 pyc 文件反编译出来,查看接口函数的逻辑 解决方案:uncompyle6可将python字节码转换回等效的python源代码,它接受python 1.3版到3.8版的字节码 具体实 ...
- 什么是pyc文件,把python的py文件编译成pyc文件,把pyc文件反编译成py文件。以及python编译的如何设置不生成pyc文件
文章目录 1 什么是pyc文件 1.1 什么是pyc文件 1.2 pyc文件是怎么生成的,有什么好处 2 把python的py文件编译成pyc文件 2.1 使用python内置库py_compile把 ...
- Python文件用pyinstaller打包成.exe文件后如何获取Python源码(Python文件反编译)
此文章自己做个学习记录,也希望对跟我有一样困扰的同学一些帮助! 使用到的工具下载链接我都已经附上,点击下面蓝色字体可直接下载: 1.pyinstxtractor.py 2.wxMEDIT 3.在线编译 ...
最新文章
- express支持i18n国际化
- r语言x%3c-读取文件,R语言读写最灵活的文件——txt文件
- WINCE6开机进度条
- 修改git历史提交的commit信息
- 标记三维点_便携式3D扫描仪全自动三坐标测量机三维扫描设计扫描测量摄影
- Linux后台进程(和jobs、bg、fg)
- 洛谷 字符串题单P1957:口算练习题
- 宁德时代推出“巧克力换电块”;热干面、小笼包、胡辣汤登上肯德基菜单 | 美通社头条...
- 动态与静态Shape
- 渗透测试 | IP信息收集
- 2019 小米校招笔试题 小米大礼包
- 看 Go 中的 struct 如何被优化,还有小插曲
- 重学Android基础系列篇(五):Android虚拟机指令
- papi酱视频因违规遭下线整改,你知道原因吗?
- Oracle中对数据分组统计
- php源码二次开发的技术,Thinkphp二次开发威客RW平台源码详细搭建教程(技术分享帖)-一颗优雅草科技yungui...
- 说一说美国大学常用的课本吧,各位想自学的可以参考
- 操作系统——进程之基本介绍
- 电线旋转接头主要的连接方法是什么
- QQ情话糖果情话内容获取并保存
热门文章
- 【论文】动态贝叶斯网络用于时序建模及动作分类
- 系统集成的系统架构图的相关的vsd素材_visio素材库
- W25Q16 存储器(Flash)
- 【软考】2019 上半年软件设计师 下午真题及答案
- 如何设计会员体系中心
- 【车载】FMEA、FTA、FMEDA
- matlab模糊数学隶属问题,模糊数学模型matlab
- python定时重启程序
- Microsoft Office Visio 2007和Microsoft Office Project 2007下载
- Microsoft Office 2016 简体中文 Vol 版镜像下载(Pro Plus、Visio、Project 下载)