python 反编译

反编译使用 uncompyle6:https://pypi.org/project/uncompyle6/

uncompyle6:一个本地 Python 跨版本反编译器和片段反编译器。decompyle,uncompyle 和 uncompyle2 的后继者。

uncompyle6 将 Python 字节码翻译回等效的 Python 源代码。它接受 Python 版本 1.0 到版本 3.8。

1)安装 uncompyle6:pip install uncompyle

2)控制台使用示例:

uncompyle6 -o . views3.py views.pyc        # 将 views.pyc 反编译为 views.py 到当前目录
uncompyle6 -o foo.py foo.pyc            # 反编译 foo.pyc 为 foo.py
uncompyle6      foo.pyc bar.pyc         # 反编译 foo.pyc, bar.pyc 到标准输出
uncompyle6 -o . foo.pyc bar.pyc         # 反编译 foo.pyc, bar.pyc 到当前目录(.),文件名保持一致,即./foo.py, ./bar.py
uncompyle6 -o /tmp /usr/lib/python1.5   # decompile whole library

3)选项

  • -o <path>:输出反编译文件到指定路径(如果对多个输入文件进行反编译,则从这些名称中删除公共前缀,并将其余部分追加到 <path>)。
uncompyle6 -o /tmp bla/fasel.pyc bla/foo.pyc-> /tmp/fasel.pyc_dis, /tmp/foo.pyc_dis
uncompyle6 -o /tmp bla/fasel.pyc bar/foo.pyc-> /tmp/bla/fasel.pyc_dis, /tmp/bar/foo.pyc_dis
uncompyle6 -o /tmp /usr/lib/python1.5-> /tmp/smtplib.pyc_dis ... /tmp/lib-tk/FixTk.pyc_dis
  • --compile | -c :attempts a decompilation after compiling <python-file>。
  • -d:打印时间戳。
  • -p <integer>:指定进程数。
  • -r:递归目录查找 .pyc 和 .pyo 文件。
  • --fragments:use fragments deparser。
  • --verify:compare generated source with input byte-code。
  • --verify-run:compile generated source, run it and check exit code。
  • --syntax-verify:compile generated source。
  • --linemaps:generated line number correspondencies between byte-code and generated source output。
  • --encoding <encoding>:根据 pep-0263 在生成的源中使用指定编码。

4)python 代码示例

import uncompyle6in_file = 'F:\\testpyc2\\demoPro\\student\\urls.pyc'
out_file = 'F:\\testpyc2\\demoPro\\urls2.py'with open(out_file, mode='w') as outstream:uncompyle6.decompile_file(in_file, outstream=outstream)

201-python 反编译相关推荐

  1. 【原创】用 Python 反编译 Python 软件

    [原创]用 Python 反编译 Python 软件 标 题: [原创]用 Python 反编译 Python 软件 作 者: Ptero 时 间: 2010-04-21,16:28:27 链 接: ...

  2. Python反编译pyinstaller打包的exe文件 从0开始(未加密篇)

    因为pyinstaller方便.兼容性相对较好,所以我们会经常见到一些用pyinstaller打包的Python程序,在这里我们了解一下如何对这些打包好的exe文件进行反编译(即反编译出.py文件), ...

  3. python反编译Pyinstaller打包的可执行文件

    背景:最近在帮朋友写一款类似抢票的脚本,朋友有好几个脚本了,但是效果不理想,想让我帮忙,由于这种需要对接口进行详细了解,有些事件没有条件去抓包,然后我就对朋友已有的几个脚本动了心思.首先像这种爬虫类小 ...

  4. python 反编译

    python 反编译工具名称: Easy Python Decompiler 工具下载地址:http://sourceforge.net/projects/easypythondecompiler/? ...

  5. Python 反编译:pyinstxtractor工具和uncompyle6库的使用

    uncompyle6 现仅适用于 Python 2.4 到 3.8 版本 Python 3.9 及以上版本请参见我另外一篇博客: Python 反编译:pycdc工具的使用 ✅作者简介:人工智能专业本 ...

  6. python反编译exe_实战 Python3.7+64位 Exe 反编译

    记得有年在上海弘连培训,其中一个逆向题就是关于python的Exe,当时就想着写个文档,后来因为忙就拖延了下来:这里补上,而且是大补上:奉献一个干货,网上没有(我没发现)Python3.7的反编译教程 ...

  7. python反编译加密文件_python打包的二进制文件反编译

    简介 Pyhton是一个脚本语言,在运行Python代码时,最终由Python解释器来执行.解释器就是Python的运行环境,但是除了开发人员,大部分人在使用时并不会安装Python.所以官方就提供了 ...

  8. Python -- 反编译pyc文件

    前提准备 cmd中安装第三方包uncompyle pip install uncompyle 安装成功之后,会在Python安装目录下的Scripts目录下新增一个uncompyle6.exe 以py ...

  9. Python反编译pyinstaller或py2exe生成的exe可执行文件,获得源码

    目录 一.从exe文件中抽取pyc文件 二.将pyc文件反编译为py源码文件 三.更正.pyc文件的头信息 一.从exe文件中抽取pyc文件 直接到下列网址将代码clone下来: GitHub - c ...

  10. python反编译-以2048小游戏为例

    文章目录 一.背景 二.工具准备 1.pyinstxtractor.py脚本用于反编译python 2.winhex用于编辑16进制的软件 三.反编译 1.放置脚本 2.运行脚本 3.找到软件名文件和 ...

最新文章

  1. oracle 10g 返回RemoteOperationException: ERROR: Wrong password for user
  2. 智慧交通day02-车流量检测实现05:小车匀速案例
  3. python-迭代器和生成器
  4. 现代软件工程 M2 博客要求
  5. Pycharm设置utf-8自动显示
  6. mysql 修改max_allowed_packet
  7. formdata ie9怎么兼容_2021上半年教师资格证笔试报名如何设置兼容性?
  8. 素因子分解算法python语言_python中求取最小公倍数的两种方法
  9. 目标检测——Faster RCNN
  10. 王春亮用心接待全国的调养者和学习者
  11. vscode编译Window c++程序缺少vc运行库解决方法
  12. 2020微信小微商户、微信支付商业版签约商户流程
  13. Sniper模拟器的安装
  14. alibaba的druid连接池的监控的两种方法
  15. cocosCreator日历插件
  16. 软件测试外包到蚂蚁金服,2019蚂蚁金服面试经验(服务运营岗,测试开发工程师等)...
  17. 十大经典排序算法及比较与分析 ( 动画演示 ) ( 可视化工具 )
  18. Fast R-CNN论文原理+目标检测笔记(二)
  19. 文本检测CTPN训练自己的数据集
  20. QQ、新浪微博、微信、QQ空间分享

热门文章

  1. 惠普z4g4装Linux系统,hp z6 g4 工作站
  2. 荣耀的D-Day:跨越科技硬件的“英吉利海峡”
  3. 金华职业技术学院计算机教研室主任,兰州职业技术学院教研室主任考核办法.PDF...
  4. python Matplotlib安装步骤
  5. (springboot-vue) 前后端交互实现
  6. 文案人必去的网站大全
  7. asp.net实现播放视频
  8. 迪文屏幕T5L平台学习笔记一:开发环境搭建注意事项
  9. 罗技k380在iOS下无法输入英文引号
  10. 招募 | 大航海计划第二期招募开始拉!