首页 > 编程问答 >Python反编译失败。 (不支持的操作码:JUMP_IF_NOT_EXC_MATCH)

Python反编译失败。 (不支持的操作码:JUMP_IF_NOT_EXC_MATCH)

时间:2024-07-29 09:30:27浏览次数:6  
标签:python

我尝试使用“pycdc.exe”反编译

使用pycdc.exe失败。因为错误“不支持的操作码:JUMP_IF_NOT_EXC_MATCH”

在此处输入图像描述

使用 pycdc.exe 失败。因为错误“不支持的操作码:JUMP_IF_NOT_EXC_MATCH”

你知道我为什么失败吗? (我试图编译的.pyc似乎是3.10版本)


遇到的错误 "Unsupported opcode: JUMP_IF_NOT_EXC_MATCH" 是因为使用的反编译工具 pycdc.exe 不支持 Python 3.10 版本中引入的新字节码指令。

JUMP_IF_NOT_EXC_MATCH 是 Python 3.10 中新增的用于模式匹配的指令,而 pycdc.exe 似乎尚未更新以支持此功能。

解决方法:

  1. 使用支持 Python 3.10 的反编译工具:

  2. Decompyle3: 这是一个活跃维护的项目,支持 Python 3.7 到 3.11 版本。可以使用以下命令安装: bash pip install decompyle3 然后使用 decompyle3 命令反编译的 .pyc 文件。

  3. Uncompyle6: 这是一个支持 Python 2.7 到 3.8 版本的反编译工具,但它可能也支持部分 3.10 特性。

  4. 尝试使用旧版本的 Python 编译源代码:

  5. 如果可能,找到原始的 .py 源代码并使用 Python 3.9 或更早版本重新编译。

  6. 这将生成与 pycdc.exe 兼容的 .pyc 文件。

请注意:

  • 反编译 Python 代码不一定能得到完美的源代码。
  • 反编译后的代码可能难以阅读或理解,尤其是在使用了复杂语法或经过优化的情况下。
  • 反编译仅用于学习和调试目的。 不要将其用于非法活动,例如盗取代码。

希望这些信息能帮助解决问题!

标签:python
From: 78805154

相关文章

  • 计算机毕业设计项目推荐,基于Echarts的高校就业数据可视化管理系统 81461(开题答辩+程序
    摘 要信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对高校就业管理等问题,对高校就业管理进行研究分析,然后开发设计出高校就业数据可视化管理系统......
  • Python逆向总结(Python反编译)
    目录第一种:直接反编译型第二种:打包成exe的py文件第三种: 给pyc字节码(类汇编形式)第四种:加花的pyc内容参考第一种:直接反编译型除了直接获得题目内容的python文件外,出题人也可以稍微加工一点点,给出题目python文件所对应的pyc文件,即python的字节码。PYC文件的定义pyc......
  • 【Python学习手册(第四版)】学习笔记06-Python动态类型-赋值模型详解
    个人总结难免疏漏,请多包涵。更多内容请查看原文。本文以及学习笔记系列仅用于个人学习、研究交流。主要介绍Python的动态类型(也就是Python自动为跟踪对象的类型,不需要在脚本中编写声明语句),Python中变量和对象是如何通过引用关联,垃圾收集的概念,对象共享引用是如何影响多个变量......
  • Python学习手册(第四版)】学习笔记09.3-Python对象类型-分类、引用VS拷贝VS深拷贝、比较
    个人总结难免疏漏,请多包涵。更多内容请查看原文。本文以及学习笔记系列仅用于个人学习、研究交流。这部分稍杂,视需要选择目录读取。主要讲的是对之前的所有对象类型作复习,以通俗易懂、由浅入深的方式进行介绍,所有对象类型共有的特性(例如,共享引用),引用、拷贝、深拷贝,以及比较、......
  • 同时运行多个Python文件
    如何同时运行python的多个文件我有三个文件pop.pypop1.pypop2.py我想同时运行这个文件这些文件正在被一一运行python代码运行所有文件可以使用以下几种方法同时运行多个Python文件:1.使用多线程/多进程:多线程(threading):如果的Pytho......
  • 《最新出炉》系列入门篇-Python+Playwright自动化测试-56- 多文件上传 - 下篇
    1.简介前边的两篇文章中,宏哥分别对input控件上传文件和非input控件上传文件进行了从理论到实践地讲解和介绍,但是后来又有人提出疑问,前边讲解和介绍的都是上传一个文件,如果上传多个文件,Playwright是如何实现的呢?宏哥看了一下官方的API也有上传多个文件的API,那么今天就来讲解和介绍......
  • 如何使用python模块捕获用户的文本输入
    我正在开发一个项目,它会检测到如果您按“(”,它会自动关闭它“[”和“{”的情况相同,但重点是它检测键盘按钮“{”或“[”不是字符,这意味着如果朋友有不同的方式输入“[”,它将无法工作,因为该程序用于检测“altgr+(”序列,这可能会影响不同语言的键盘因为您不想在按下......
  • 如何更新 numpy 2 的 python 模块?
    在带有pip的Linux上,新的numpy2似乎可以很好地与pandas配合使用:$python3-c'importnumpyasnp;print(np.__version__);importpandasaspd;print(pd.__version__)'2.0.12.2.2但是,在带有miniconda的Windows上,我得到$${localappdata}/miniconda3/en......
  • python BioChemist 数据集的数据字典/描述
    我正在使用生物化学家数据集。我在哪里可以找到包含每个变量描述的“数据字典”?这就是我正在查看的:importpandasaspdfrompydatasetimportdatadata('bioChemists')我已经用谷歌搜索并尝试寻找运算符,但没有运气!pydataset软件包不包含生物化学家数据集的描述......
  • python中的Telebot API不断断开连接
    使用远程机器人,不断断开服务。我暂时让它在发生这种情况时重新启动。下面是我的代码和错误:importrandomimporttelebotfromtelebot.typesimportInlineKeyboardMarkup,InlineKeyboardButtonfromthreadingimportTimer,Eventfromdotenvimportload_dotenvimporto......