pyinstaller还原python代码过程图解

 更新时间:2020年01月08日 11:45:51   作者:potatso  
这篇文章主要介绍了pyinstaller还原python代码过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

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

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

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

1. pyinstxtractor.py

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

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

2. pyi-archive_viewer

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

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

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

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

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

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

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

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

如图修复

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

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

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

相关文章

  • python爬虫基础之简易网页搜集器

    python爬虫基础之简易网页搜集器

    这篇文章主要介绍了python爬虫基础之简易网页搜集器,文中有非常详细的代码示例,对正在学习python爬虫的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • Django REST为文件属性输出完整URL的方法

    Django REST为文件属性输出完整URL的方法

    这篇文章主要给大家介绍了关于Django REST如何为文件属性输出完整URL的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用django具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-12-12
  • tensorflow基于CNN实战mnist手写识别(小白必看)

    tensorflow基于CNN实战mnist手写识别(小白必看)

    这篇文章主要介绍了tensorflow基于CNN实战mnist手写识别(小白必看),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 怎样用cmd命令行运行Python文件

    怎样用cmd命令行运行Python文件

    这篇文章主要介绍了怎样用cmd命令行运行Python文件问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Python用5行代码写一个自定义简单二维码

    Python用5行代码写一个自定义简单二维码

    今天小编就为大家分享一篇关于Python用5行代码写一个自定义简单二维码的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • Python3实现的Mysql数据库操作封装类

    Python3实现的Mysql数据库操作封装类

    这篇文章主要介绍了Python3实现的Mysql数据库操作封装类,涉及Python针对mysql数据库的连接、查询、更新及关闭连接等相关操作技巧,需要的朋友可以参考下
    2018-06-06
  • django authenticate用户身份认证的项目实践

    django authenticate用户身份认证的项目实践

    Django的contrib.auth模块中的authenticate()函数用于对用户的凭据进行身份验证,本文就来介绍一下django authenticate用户身份认证的使用,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • 用python生成1000个txt文件的方法

    用python生成1000个txt文件的方法

    今天小编就为大家分享一篇用python生成1000个txt文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • 无法使用pip命令安装python第三方库的原因及解决方法

    无法使用pip命令安装python第三方库的原因及解决方法

    今天小编就为大家分享一篇无法使用pip命令安装python第三方库的原因及解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • python爬虫 爬取58同城上所有城市的租房信息详解

    python爬虫 爬取58同城上所有城市的租房信息详解

    这篇文章主要介绍了python爬虫 爬取58同城上所有城市的租房信息详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07

最新评论