pyinstaller还原python代码过程图解


Posted in Python onJanuary 08, 2020

这篇文章主要介绍了pyinstaller还原python代码过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

pyinstaller 的作用就是将python打包成对应平台的可执行文件。一般这种可执行文件的体积都比较大。
我们可以先通过逆向软件查看一下具体信息

pyinstaller还原python代码过程图解

查看字符串信息 只要有诸如以上的字符串 就说明这个可执行文件有很大程度上是通过pyinstaller打包的 解密方法有两个

1. pyinstxtractor.py

方法很简单 直接python pyinstxtractor.py 待解密的文件

当然有可能会报错,不过绝大多数情况下是可以使用的

pyinstaller还原python代码过程图解

2. pyi-archive_viewer

通过查看pyinstaller的文档,发现提供pyi-archive_viewer这样一款工具,去提取可执行文件中的py代码。根据官网的介绍,这款工具的作用就是查看可执行文件中的各种py代码。如图

https://pyinstaller.readthedocs.io/en/v3.3.1/advanced-topics.html

pyinstaller还原python代码过程图解

首先要pip install pyinstaller ,安装pyinstaller 才能使用pyi-archive_viewer这条命令
执行如图命令

pyinstaller还原python代码过程图解

这时就会列出集成进去的py包

找到那个py文件,提取出来

pyinstaller还原python代码过程图解

现在就已经还原pyc代码了。

pyinstaller还有一个问题,就是他在打包pyc的时候,会去掉pyc的magic和时间戳。所以我们需要手工修复。pyinstaller在打包的系统库的时候是不会去掉magic的,所以我们查看一下系统库的magic,如下

pyinstaller还原python代码过程图解

magic为\x03\xf3\x0d\x0a,时间戳的话,随便写一个就行,不过必须是4个字节

如图修复

pyinstaller还原python代码过程图解

保存,然后找个pyc还原py代码的网站就可以了。

至此,完整的提取出pyinstaller打包的文件了。

pyinstaller还原python代码过程图解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
利用python代码写的12306订票代码
Dec 20 Python
CentOS中升级Python版本的方法详解
Jul 10 Python
利用python爬取斗鱼app中照片方法实例
Dec 03 Python
python中format()函数的简单使用教程
Mar 14 Python
python实现批量解析邮件并下载附件
Jun 19 Python
python中文编码与json中文输出问题详解
Aug 24 Python
Linux 修改Python命令的方法示例
Dec 03 Python
对python借助百度云API对评论进行观点抽取的方法详解
Feb 21 Python
pandas对dataFrame中某一个列的数据进行处理的方法
Jul 08 Python
python的pstuil模块使用方法总结
Jul 26 Python
Python类及获取对象属性方法解析
Jun 15 Python
浅析Python requests 模块
Oct 09 Python
python Tensor和Array对比分析
Jan 08 #Python
Pycharm小白级简单使用教程
Jan 08 #Python
python如何实现不可变字典inmutabledict
Jan 08 #Python
PyQt5 closeEvent关闭事件退出提示框原理解析
Jan 08 #Python
python从内存地址上加载python对象过程详解
Jan 08 #Python
PyCharm第一次安装及使用教程
Jan 08 #Python
Python namedtuple命名元组实现过程解析
Jan 08 #Python
You might like
实现 win2003 下 mysql 数据库每天自动备份
2006/12/06 PHP
PHP开发框架Laravel数据库操作方法总结
2014/09/03 PHP
PHP代码判断设备是手机还是平板电脑(两种方法)
2015/10/19 PHP
phpcms实现验证码替换及phpcms实现全站搜索功能教程详解
2017/12/13 PHP
PHP设计模式之迭代器模式Iterator实例分析【对象行为型】
2020/04/26 PHP
通过JAVAScript实现页面自适应
2007/01/19 Javascript
ie和firefox不兼容的解决方法集合
2009/04/28 Javascript
jquery实现每个数字上都带进度条的幻灯片
2013/02/20 Javascript
JavaScript中统计Textarea字数并提示还能输入的字符
2014/06/10 Javascript
javascript禁止访客复制网页内容的实现代码
2015/08/05 Javascript
使用js获取地址栏参数的方法推荐(超级简单)
2016/06/14 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
Bootstrap整体框架之CSS12栅格系统
2016/12/15 Javascript
浅谈react+es6+webpack的基础配置
2017/08/09 Javascript
详解性能更优越的小程序图片懒加载方式
2018/07/18 Javascript
JS+HTML5实现获取手机验证码倒计时按钮
2018/08/08 Javascript
JavaScript继承的特性与实践应用深入详解
2018/12/30 Javascript
微信小程序音乐播放器开发
2019/11/20 Javascript
node.js express捕获全局异常的三种方法实例分析
2019/12/27 Javascript
原生js实现无缝轮播图
2020/01/11 Javascript
[44:15]DOTA2上海特级锦标赛主赛事日 - 5 败者组决赛Liquid VS EG第二局
2016/03/06 DOTA
用Python输出一个杨辉三角的例子
2014/06/13 Python
Python利用正则表达式匹配并截取指定子串及去重的方法
2015/07/30 Python
对python3 urllib包与http包的使用详解
2018/05/10 Python
python opencv 二值化 计算白色像素点的实例
2019/07/03 Python
在python中实现同行输入/接收多个数据的示例
2019/07/20 Python
Python+PyQt5+MySQL实现天气管理系统
2020/06/16 Python
Pycharm 跳转回之前所在页面的操作
2021/02/05 Python
2014组织生活会方案
2014/05/19 职场文书
霸气押韵的班级口号
2014/06/09 职场文书
2014年酒店年度工作总结
2014/12/10 职场文书
2014年标准化工作总结
2014/12/17 职场文书
酒店人事主管岗位职责
2015/04/11 职场文书
2015年高校保卫处工作总结
2015/07/23 职场文书
Python如何利用正则表达式爬取网页信息及图片
2021/04/17 Python
python opencv人脸识别考勤系统的完整源码
2021/04/26 Python