精华内容
下载资源
问答
  • pyc反编译工具下载 decompyle6(跨版本Python字节码反编译器) V3.7.3 免费版(支持Python3.8) 下载-脚本之家
    2020-11-28 15:46:08

    uncompyle6是一款原生python的跨版本反编译器和fragment反编译器,是decompyle、uncompyle、uncompyle2等的接替者。它可以把python生成的pyo、pyc字节码文件反编译为十分完美的源码,并可以将反编译后的源码再次生成字节码文件。

    uncompyle6可将python字节码转换回等效的python源代码,它接受python 1.3版到3.8版的字节码,这其中跨越了24年的python版本,此外还包括Dropbox的Python 2.5字节码和一些PyPy字节码。

    安装使用方法

    1、下载并解压到安装目录

    python setup.py install//安装

    2、具体用法:

    outfile必须先写,例如有一个pcat.pyc,想反编译输出文件为pcat.py

    uncompyle6 -o pcat.py pcat.pyc

    反编译:uncompyle6 ../pyc/utils.cpython-38.pyc > ../pyc/utils.py

    事实上比uncompyle2容易多了,在windows里pip安装后,会在%python_home%\Scripts\目录下生成uncompyle6.exe

    所以只要你把%python_home%\Scripts\加入到windows的环境变量里,即可像在linux上般使用uncompyle6命令。

    uncompyle6命令行使用:

    import uncompyle6

    with open("my.py","w",encoding='utf8') as f:

    uncompyle6.uncompyle_file("mp.pyo", f)

    说明

    安装好后,注意执行的命令为uncompyle6,而不是uncompyle。

    查看帮助命令:uncompyle6 --help、uncompyle6 -h

    反编译单个文件 :uncompyle6 foo.pyc > foo.py

    反编译多个文件:uncompyle6 -o . *.pyc

    163UHJ521.jpg

    更多相关内容
  • 批量反编译pyc工具

    2017-06-29 11:26:35
    很好用的批量反编译pyc工具,美中不足是转义后的文件后缀是pyc_dis,需要自己修改一下
  • PyInstaller Extractor可以提取出PyInstaller所创建的exe可执行文件的资源内容。之后再采用pyc反编译工具即可得到源码。教程:https://blog.luzy.top/posts/3136266189/
  • pyc反编译.rar

    2019-11-24 09:12:20
    这是个windows版的工具,可以反编译单个pyc,pyo 文件,或者选定反编译一个指定文件夹下面的pyc,pyo 文件, 确实很好用.
  • pyc文件反编译

    千次阅读 2020-10-09 21:03:40
    找一个pyc文件(不是源代码文件),然后搜索相关反编译工具pyc反编译成Python源代码,最好能多找几种工具或者途径达到反编译的目的。 我找的是另一位同学的pyc文件 1、在线反编译 2、Easy Python Decompiler...

    找一个pyc文件(不是源代码文件),然后搜索相关反编译工具把pyc反编译成Python源代码,最好能多找几种工具或者途径达到反编译的目的。

    我找的是另一位同学的pyc文件
    1、在线反编译
    在这里插入图片描述

    2、Easy Python Decompiler反编译工具
    在这里插入图片描述

    但是他的代码可能用的是最新的python环境,Easy Python Decompiler目前只支持带python3.4。但我反编译其他文件没有问题。
    3、使用uncompyle6代码反编译

    import os
    import sys
    
    
    def displayFile(file):
        unPath = sys.executable
        unPath = unPath[0: unPath.rfind(os.sep)]
        newname = file[0:file.rfind('.')] + '.py'
        command = "python -u " + unPath + "\scripts\uncompyle2 " + file + ">" + newname
        try:
            os.system(command)
        except :
            print
            file
    
    
    if __name__ == '__main__':
        # print unPath
        print("init")
        displayFile('D:\\hh.pyc')
        print("finished")
    

    反编译出来的源代码为:

    import string
    base64_charset = string.ascii_uppercase + string.ascii_lowercase + string.digits + '+/'
    a1 = 'A12345678'
    a2 = ''
    a3 = ''
    n1 = len(a1) % 3
    n2 = len(a1) // 3
    for i in range(1, n1):
        a1 += '\x00'
    
    # WARNING: Decompyle incomplete
    import string
    base64_charset = string.ascii_uppercase + string.ascii_lowercase + string.digits + '+/'
    a1 = 'A12345678'
    a2 = ''
    a3 = ''
    n1 = len(a1) % 3
    n2 = len(a1) // 3
    for i in range(1, n1):
        a1 += '\x00'
    
    展开全文
  • .pyc反编译在线工具

    万次阅读 2017-07-01 13:45:01
    http://tool.lu/pyc 效果还是不错的。 只是把一些汉字变成了十六进制

    http://tool.lu/pyc
    效果还是不错的。
    这里写图片描述
    只是把一些汉字变成了十六进制
    这里写图片描述

    使用离线反编译工具

    python3 -m pip install uncompyle6
    uncompyle6 -o src `find . |grep .pyc`
    
    展开全文
  • python反编译工具Easy Python Decompiler,参考网址http://blog.csdn.net/qq_32808253/article/details/78518204
  • python的pyc反编译

    千次阅读 2019-07-11 15:24:32
    1,下载反编译工具:Easy Python Decompiler 下截地址:https://sourceforge.net/projects/easypythondecompiler/ 2,准备好字节码表,方便对照。使用python2.7和python3.6进行获取字节码: 获取方法: import ...

    首先先介绍一个在线反编译工具(基本上大多文件都可以实现):
    https://tool.lu/pyc/
    如果出现无法反编译的文件可以参照下面的方法进行反编译

    1,下载反编译工具:Easy Python Decompiler

    2,准备好字节码表,方便对照。使用python2.7和python3.6进行获取字节码:

    获取方法:

    import opcode  
    for op in range(len(opcode.opname)):  
      print('0x%.2X(%.3d): %s' % (op, op, opcode.opname[op]))  
    

    字节码表附在最后面;

    在使用Easy Python Decompiler反编译一个第三方pyc文件时,总是提示失败,并成生对应的文件test.pyc_dis_failed:

    打开test.pyc_dis_failed文件查看时,最后一行有提示报错的地方:
    在这里插入图片描述
    根据提示,找到 1436行:
    在这里插入图片描述
    用ueditor工具打开pyc文件,按照这编文章的介绍进行理解字节码:
    http://www.xumenger.com/01-python-pyc-20180521/

    重点操作:

    找到报错的 1436这一行对应的字节[71 46 03],然后将这三字节换成三个 BREAK_LOOP(对应为 50),即[50 50 50],然后继续pyc编译反编译,如果还是报错,根据报错的地方字节码,继续换成 BREAK_LOOP(一个字节换成一个BREAK_LOOP,直到没报错,反编译成功。

    附:字节码表:
    
    python2.7字节码:
    
    0x00(000): STOP_CODE
    0x01(001): POP_TOP
    0x02(002): ROT_TWO
    0x03(003): ROT_THREE
    0x04(004): DUP_TOP
    0x05(005): ROT_FOUR
    0x06(006): <6>
    0x07(007): <7>
    0x08(008): <8>
    0x09(009): NOP
    0x0A(010): UNARY_POSITIVE
    0x0B(011): UNARY_NEGATIVE
    0x0C(012): UNARY_NOT
    0x0D(013): UNARY_CONVERT
    0x0E(014): <14>
    0x0F(015): UNARY_INVERT
    0x10(016): <16>
    0x11(017): <17>
    0x12(018): <18>
    0x13(019): BINARY_POWER
    0x14(020): BINARY_MULTIPLY
    0x15(021): BINARY_DIVIDE
    0x16(022): BINARY_MODULO
    0x17(023): BINARY_ADD
    0x18(024): BINARY_SUBTRACT
    0x19(025): BINARY_SUBSCR
    0x1A(026): BINARY_FLOOR_DIVIDE
    0x1B(027): BINARY_TRUE_DIVIDE
    0x1C(028): INPLACE_FLOOR_DIVIDE
    0x1D(029): INPLACE_TRUE_DIVIDE
    0x1E(030): SLICE+0
    0x1F(031): SLICE+1
    0x20(032): SLICE+2
    0x21(033): SLICE+3
    0x22(034): <34>
    0x23(035): <35>
    0x24(036): <36>
    0x25(037): <37>
    0x26(038): <38>
    0x27(039): <39>
    0x28(040): STORE_SLICE+0
    0x29(041): STORE_SLICE+1
    0x2A(042): STORE_SLICE+2
    0x2B(043): STORE_SLICE+3
    0x2C(044): <44>
    0x2D(045): <45>
    0x2E(046): <46>
    0x2F(047): <47>
    0x30(048): <48>
    0x31(049): <49>
    0x32(050): DELETE_SLICE+0
    0x33(051): DELETE_SLICE+1
    0x34(052): DELETE_SLICE+2
    0x35(053): DELETE_SLICE+3
    0x36(054): STORE_MAP
    0x37(055): INPLACE_ADD
    0x38(056): INPLACE_SUBTRACT
    0x39(057): INPLACE_MULTIPLY
    0x3A(058): INPLACE_DIVIDE
    0x3B(059): INPLACE_MODULO
    0x3C(060): STORE_SUBSCR
    0x3D(061): DELETE_SUBSCR
    0x3E(062): BINARY_LSHIFT
    0x3F(063): BINARY_RSHIFT
    0x40(064): BINARY_AND
    0x41(065): BINARY_XOR
    0x42(066): BINARY_OR
    0x43(067): INPLACE_POWER
    0x44(068): GET_ITER
    0x45(069): <69>
    0x46(070): PRINT_EXPR
    0x47(071): PRINT_ITEM
    0x48(072): PRINT_NEWLINE
    0x49(073): PRINT_ITEM_TO
    0x4A(074): PRINT_NEWLINE_TO
    0x4B(075): INPLACE_LSHIFT
    0x4C(076): INPLACE_RSHIFT
    0x4D(077): INPLACE_AND
    0x4E(078): INPLACE_XOR
    0x4F(079): INPLACE_OR
    0x50(080): BREAK_LOOP
    0x51(081): WITH_CLEANUP
    0x52(082): LOAD_LOCALS
    0x53(083): RETURN_VALUE
    0x54(084): IMPORT_STAR
    0x55(085): EXEC_STMT
    0x56(086): YIELD_VALUE
    0x57(087): POP_BLOCK
    0x58(088): END_FINALLY
    0x59(089): BUILD_CLASS
    0x5A(090): STORE_NAME
    0x5B(091): DELETE_NAME
    0x5C(092): UNPACK_SEQUENCE
    0x5D(093): FOR_ITER
    0x5E(094): LIST_APPEND
    0x5F(095): STORE_ATTR
    0x60(096): DELETE_ATTR
    0x61(097): STORE_GLOBAL
    0x62(098): DELETE_GLOBAL
    0x63(099): DUP_TOPX
    0x64(100): LOAD_CONST
    0x65(101): LOAD_NAME
    0x66(102): BUILD_TUPLE
    0x67(103): BUILD_LIST
    0x68(104): BUILD_SET
    0x69(105): BUILD_MAP
    0x6A(106): LOAD_ATTR
    0x6B(107): COMPARE_OP
    0x6C(108): IMPORT_NAME
    0x6D(109): IMPORT_FROM
    0x6E(110): JUMP_FORWARD
    0x6F(111): JUMP_IF_FALSE_OR_POP
    0x70(112): JUMP_IF_TRUE_OR_POP
    0x71(113): JUMP_ABSOLUTE
    0x72(114): POP_JUMP_IF_FALSE
    0x73(115): POP_JUMP_IF_TRUE
    0x74(116): LOAD_GLOBAL
    0x75(117): <117>
    0x76(118): <118>
    0x77(119): CONTINUE_LOOP
    0x78(120): SETUP_LOOP
    0x79(121): SETUP_EXCEPT
    0x7A(122): SETUP_FINALLY
    0x7B(123): <123>
    0x7C(124): LOAD_FAST
    0x7D(125): STORE_FAST
    0x7E(126): DELETE_FAST
    0x7F(127): <127>
    0x80(128): <128>
    0x81(129): <129>
    0x82(130): RAISE_VARARGS
    0x83(131): CALL_FUNCTION
    0x84(132): MAKE_FUNCTION
    0x85(133): BUILD_SLICE
    0x86(134): MAKE_CLOSURE
    0x87(135): LOAD_CLOSURE
    0x88(136): LOAD_DEREF
    0x89(137): STORE_DEREF
    0x8A(138): <138>
    0x8B(139): <139>
    0x8C(140): CALL_FUNCTION_VAR
    0x8D(141): CALL_FUNCTION_KW
    0x8E(142): CALL_FUNCTION_VAR_KW
    0x8F(143): SETUP_WITH
    0x90(144): <144>
    0x91(145): EXTENDED_ARG
    0x92(146): SET_ADD
    0x93(147): MAP_ADD
    0x94(148): <148>
    0x95(149): <149>
    0x96(150): <150>
    0x97(151): <151>
    0x98(152): <152>
    0x99(153): <153>
    0x9A(154): <154>
    0x9B(155): <155>
    0x9C(156): <156>
    0x9D(157): <157>
    0x9E(158): <158>
    0x9F(159): <159>
    0xA0(160): <160>
    0xA1(161): <161>
    0xA2(162): <162>            
    0xA3(163): <163>
    0xA4(164): <164>
    0xA5(165): <165>
    0xA6(166): <166>
    0xA7(167): <167>
    0xA8(168): <168>
    0xA9(169): <169>
    0xAA(170): <170>
    0xAB(171): <171>
    0xAC(172): <172>
    0xAD(173): <173>
    0xAE(174): <174>
    0xAF(175): <175>
    0xB0(176): <176>
    0xB1(177): <177>
    0xB2(178): <178>
    0xB3(179): <179>
    0xB4(180): <180>
    0xB5(181): <181>
    0xB6(182): <182>
    0xB7(183): <183>
    0xB8(184): <184>
    0xB9(185): <185>
    0xBA(186): <186>
    0xBB(187): <187>
    0xBC(188): <188>
    0xBD(189): <189>
    0xBE(190): <190>
    0xBF(191): <191>
    0xC0(192): <192>
    0xC1(193): <193>
    0xC2(194): <194>
    0xC3(195): <195>
    0xC4(196): <196>
    0xC5(197): <197>
    0xC6(198): <198>
    0xC7(199): <199>
    0xC8(200): <200>
    0xC9(201): <201>
    0xCA(202): <202>
    0xCB(203): <203>
    0xCC(204): <204>
    0xCD(205): <205>
    0xCE(206): <206>
    0xCF(207): <207>
    0xD0(208): <208>
    0xD1(209): <209>
    0xD2(210): <210>
    0xD3(211): <211>
    0xD4(212): <212>
    0xD5(213): <213>
    0xD6(214): <214>
    0xD7(215): <215>
    0xD8(216): <216>
    0xD9(217): <217>
    0xDA(218): <218>
    0xDB(219): <219>
    0xDC(220): <220>
    0xDD(221): <221>
    0xDE(222): <222>
    0xDF(223): <223>
    0xE0(224): <224>
    0xE1(225): <225>
    0xE2(226): <226>
    0xE3(227): <227>
    0xE4(228): <228>
    0xE5(229): <229>
    0xE6(230): <230>
    0xE7(231): <231>
    0xE8(232): <232>
    0xE9(233): <233>
    0xEA(234): <234>
    0xEB(235): <235>
    0xEC(236): <236>
    0xED(237): <237>
    0xEE(238): <238>
    0xEF(239): <239>
    0xF0(240): <240>
    0xF1(241): <241>
    0xF2(242): <242>
    0xF3(243): <243>
    0xF4(244): <244>
    0xF5(245): <245>
    0xF6(246): <246>
    0xF7(247): <247>
    0xF8(248): <248>
    0xF9(249): <249>
    0xFA(250): <250>
    0xFB(251): <251>
    0xFC(252): <252>
    0xFD(253): <253>
    0xFE(254): <254>
    0xFF(255): <255>
    
    
    python3.6字节码:
    0x00(000): <0>
    0x01(001): POP_TOP
    0x02(002): ROT_TWO
    0x03(003): ROT_THREE
    0x04(004): DUP_TOP
    0x05(005): DUP_TOP_TWO
    0x06(006): <6>
    0x07(007): <7>
    0x08(008): <8>
    0x09(009): NOP
    0x0A(010): UNARY_POSITIVE
    0x0B(011): UNARY_NEGATIVE
    0x0C(012): UNARY_NOT
    0x0D(013): <13>
    0x0E(014): <14>
    0x0F(015): UNARY_INVERT
    0x10(016): BINARY_MATRIX_MULTIPLY
    0x11(017): INPLACE_MATRIX_MULTIPLY
    0x12(018): <18>
    0x13(019): BINARY_POWER
    0x14(020): BINARY_MULTIPLY
    0x15(021): <21>
    0x16(022): BINARY_MODULO
    0x17(023): BINARY_ADD
    0x18(024): BINARY_SUBTRACT
    0x19(025): BINARY_SUBSCR
    0x1A(026): BINARY_FLOOR_DIVIDE
    0x1B(027): BINARY_TRUE_DIVIDE
    0x1C(028): INPLACE_FLOOR_DIVIDE
    0x1D(029): INPLACE_TRUE_DIVIDE
    0x1E(030): <30>
    0x1F(031): <31>
    0x20(032): <32>
    0x21(033): <33>
    0x22(034): <34>
    0x23(035): <35>
    0x24(036): <36>
    0x25(037): <37>
    0x26(038): <38>
    0x27(039): <39>
    0x28(040): <40>
    0x29(041): <41>
    0x2A(042): <42>
    0x2B(043): <43>
    0x2C(044): <44>
    0x2D(045): <45>
    0x2E(046): <46>
    0x2F(047): <47>
    0x30(048): <48>
    0x31(049): <49>
    0x32(050): GET_AITER
    0x33(051): GET_ANEXT
    0x34(052): BEFORE_ASYNC_WITH
    0x35(053): <53>
    0x36(054): <54>
    0x37(055): INPLACE_ADD
    0x38(056): INPLACE_SUBTRACT
    0x39(057): INPLACE_MULTIPLY
    0x3A(058): <58>
    0x3B(059): INPLACE_MODULO
    0x3C(060): STORE_SUBSCR
    0x3D(061): DELETE_SUBSCR
    0x3E(062): BINARY_LSHIFT
    0x3F(063): BINARY_RSHIFT
    0x40(064): BINARY_AND
    0x41(065): BINARY_XOR
    0x42(066): BINARY_OR
    0x43(067): INPLACE_POWER
    0x44(068): GET_ITER
    0x45(069): GET_YIELD_FROM_ITER
    0x46(070): PRINT_EXPR
    0x47(071): LOAD_BUILD_CLASS
    0x48(072): YIELD_FROM
    0x49(073): GET_AWAITABLE
    0x4A(074): <74>
    0x4B(075): INPLACE_LSHIFT
    0x4C(076): INPLACE_RSHIFT
    0x4D(077): INPLACE_AND
    0x4E(078): INPLACE_XOR
    0x4F(079): INPLACE_OR
    0x50(080): BREAK_LOOP
    0x51(081): WITH_CLEANUP_START
    0x52(082): WITH_CLEANUP_FINISH
    0x53(083): RETURN_VALUE
    0x54(084): IMPORT_STAR
    0x55(085): SETUP_ANNOTATIONS
    0x56(086): YIELD_VALUE
    0x57(087): POP_BLOCK
    0x58(088): END_FINALLY
    0x59(089): POP_EXCEPT
    0x5A(090): STORE_NAME
    0x5B(091): DELETE_NAME
    0x5C(092): UNPACK_SEQUENCE
    0x5D(093): FOR_ITER
    0x5E(094): UNPACK_EX
    0x5F(095): STORE_ATTR
    0x60(096): DELETE_ATTR
    0x61(097): STORE_GLOBAL
    0x62(098): DELETE_GLOBAL
    0x63(099): <99>
    0x64(100): LOAD_CONST
    0x65(101): LOAD_NAME
    0x66(102): BUILD_TUPLE
    0x67(103): BUILD_LIST
    0x68(104): BUILD_SET
    0x69(105): BUILD_MAP
    0x6A(106): LOAD_ATTR
    0x6B(107): COMPARE_OP
    0x6C(108): IMPORT_NAME
    0x6D(109): IMPORT_FROM
    0x6E(110): JUMP_FORWARD
    0x6F(111): JUMP_IF_FALSE_OR_POP
    0x70(112): JUMP_IF_TRUE_OR_POP
    0x71(113): JUMP_ABSOLUTE
    0x72(114): POP_JUMP_IF_FALSE
    0x73(115): POP_JUMP_IF_TRUE
    0x74(116): LOAD_GLOBAL
    0x75(117): <117>
    0x76(118): <118>
    0x77(119): CONTINUE_LOOP
    0x78(120): SETUP_LOOP
    0x79(121): SETUP_EXCEPT
    0x7A(122): SETUP_FINALLY
    0x7B(123): <123>
    0x7C(124): LOAD_FAST
    0x7D(125): STORE_FAST
    0x7E(126): DELETE_FAST
    0x7F(127): STORE_ANNOTATION
    0x80(128): <128>
    0x81(129): <129>
    0x82(130): RAISE_VARARGS
    0x83(131): CALL_FUNCTION
    0x84(132): MAKE_FUNCTION
    0x85(133): BUILD_SLICE
    0x86(134): <134>
    0x87(135): LOAD_CLOSURE
    0x88(136): LOAD_DEREF
    0x89(137): STORE_DEREF
    0x8A(138): DELETE_DEREF
    0x8B(139): <139>
    0x8C(140): <140>
    0x8D(141): CALL_FUNCTION_KW
    0x8E(142): CALL_FUNCTION_EX
    0x8F(143): SETUP_WITH
    0x90(144): EXTENDED_ARG
    0x91(145): LIST_APPEND
    0x92(146): SET_ADD
    0x93(147): MAP_ADD
    0x94(148): LOAD_CLASSDEREF
    0x95(149): BUILD_LIST_UNPACK
    0x96(150): BUILD_MAP_UNPACK
    0x97(151): BUILD_MAP_UNPACK_WITH_CALL
    0x98(152): BUILD_TUPLE_UNPACK
    0x99(153): BUILD_SET_UNPACK
    0x9A(154): SETUP_ASYNC_WITH
    0x9B(155): FORMAT_VALUE
    0x9C(156): BUILD_CONST_KEY_MAP
    0x9D(157): BUILD_STRING
    0x9E(158): BUILD_TUPLE_UNPACK_WITH_CALL
    0x9F(159): <159>
    0xA0(160): <160>
    0xA1(161): <161>
    0xA2(162): <162>
    0xA3(163): <163>
    0xA4(164): <164>
    0xA5(165): <165>
    0xA6(166): <166>
    0xA7(167): <167>
    0xA8(168): <168>
    0xA9(169): <169>
    0xAA(170): <170>
    0xAB(171): <171>
    0xAC(172): <172>
    0xAD(173): <173>
    0xAE(174): <174>
    0xAF(175): <175>
    0xB0(176): <176>
    0xB1(177): <177>
    0xB2(178): <178>
    0xB3(179): <179>
    0xB4(180): <180>
    0xB5(181): <181>
    0xB6(182): <182>
    0xB7(183): <183>
    0xB8(184): <184>
    0xB9(185): <185>
    0xBA(186): <186>
    0xBB(187): <187>
    0xBC(188): <188>
    0xBD(189): <189>
    0xBE(190): <190>
    0xBF(191): <191>
    0xC0(192): <192>
    0xC1(193): <193>
    0xC2(194): <194>
    0xC3(195): <195>
    0xC4(196): <196>
    0xC5(197): <197>
    0xC6(198): <198>
    0xC7(199): <199>
    0xC8(200): <200>
    0xC9(201): <201>
    0xCA(202): <202>
    0xCB(203): <203>
    0xCC(204): <204>
    0xCD(205): <205>
    0xCE(206): <206>
    0xCF(207): <207>
    0xD0(208): <208>
    0xD1(209): <209>
    0xD2(210): <210>
    0xD3(211): <211>
    0xD4(212): <212>
    0xD5(213): <213>
    0xD6(214): <214>
    0xD7(215): <215>
    0xD8(216): <216>
    0xD9(217): <217>
    0xDA(218): <218>
    0xDB(219): <219>
    0xDC(220): <220>
    0xDD(221): <221>
    0xDE(222): <222>
    0xDF(223): <223>
    0xE0(224): <224>
    0xE1(225): <225>
    0xE2(226): <226>
    0xE3(227): <227>
    0xE4(228): <228>
    0xE5(229): <229>
    0xE6(230): <230>
    0xE7(231): <231>
    0xE8(232): <232>
    0xE9(233): <233>
    0xEA(234): <234>
    0xEB(235): <235>
    0xEC(236): <236>
    0xED(237): <237>
    0xEE(238): <238>
    0xEF(239): <239>
    0xF0(240): <240>
    0xF1(241): <241>
    0xF2(242): <242>
    0xF3(243): <243>
    0xF4(244): <244>
    0xF5(245): <245>
    0xF6(246): <246>
    0xF7(247): <247>
    0xF8(248): <248>
    0xF9(249): <249>
    0xFA(250): <250>
    0xFB(251): <251>
    0xFC(252): <252>
    0xFD(253): <253>
    0xFE(254): <254>
    0xFF(255): <255>
    -------------
    
    转自:https://blog.csdn.net/seagulhui1/article/details/90710266
    
    展开全文
  • py,反编译三、使用方法 前言 pyc时py编译后的二进制文件 一、py->pyc,编译 1、正常运行py文件即会在__pycache__文件夹下得到xxx…cpython-3x.pyc,即以python3.x版本编译得到的二进制pyc文件 2、使用py_...
  • python文件编译与pyc反编译

    千次阅读 2020-07-10 17:02:41
    既然有反编译的需求,为了保护pyc文件不被反编译,我们又希望找到一个方法来防止pyc文件被反编译。 本文介绍了如何将py文件编译成pyc和pyo文件,也介绍了如何反编译pyc文件, 又给出了一种字节码混淆方法来防止pyc...
  • python 将pyc 文件反编译成py源文件

    千次阅读 2017-11-13 11:07:03
    1.下载反编译工具Easy Python Decompiler https://sourceforge.net/projects/easypythondecompiler/ 2.反编译pyc文件 3.将下列代码保存为bat文件,放到使用Easy Python Decompiler转换成功后的文件夹下,双击...
  • E:\****.pyc is interim Python 3.000+4 (3040) bytecode which is not supported. Final released versions are supported. 这种情况我在百度 stackoverflow都搜了一遍,竟然没有人出现过 (吐槽一下,...
  • Python 在线反编译工具

    万次阅读 2015-06-16 10:38:27
    今天在Ubuntu下面用Multi-Mechanize写...各种途径想找回被删除的文件,但是都很麻烦,就在我放弃准备从头再来的时候,看到了之前编译时留下的pyc文件,灵光一现,试试能不能反编译呢?度娘告诉我,pyc文件的反编译很容
  • Python安全小工具反编译pyc文件

    千次阅读 2018-08-26 12:46:52
    有时需要查看某个Python Web目录内Python源码,但dump下来只有pyc文件而没有py文件,这时需要我们反编译pyc文件为py文件。为了方便就写个脚本遍历目录内的pyc文件并进行反编译。 主要应用Python的第三方uncompyle6...
  • pyc文件反编译为py文件

    千次阅读 2020-02-28 15:39:51
    近期时不时需要把工程里的 pyc 文件反编译出来,查看接口函数的逻辑。此前有师兄安利了uncompyle6工具,我使用了几次,发现反编译出来的代码逻辑很清晰,此处我也不能打包票 uncompyle6 反编译出的源码一定无误,...
  • 1,下载反编译工具:Easy Python Decompiler 下截地址:https://sourceforge.net/projects/easypythondecompiler/ 2,准备好字节码表,方便对照。使用python2.7和python3.6进行获取字节码: 获取方法: import ...
  • Stegosaurus 本文将给大家介绍这款名叫Stegosaurus的隐写工具,它允许我们在Python字节码文件(pyc或pyo)中嵌入任意Payload。由于编码密度较低,因此我们嵌入Payload的...PYC-在线编译器 、隐写工具 、还有一种情
  • pyc文件反编译成py文件

    千次阅读 2020-12-13 16:15:31
    前言 从git上拉下来的程序,运行的时候发现import少一个py文件,相应文件夹下只有对应的pyc文件,且程序运行报import不了...pyc的内容,是跟python的版本相关的,不同版本编译后的pyc文件是不同的,3.7编译pyc文件,3
  • 0x00 安装 1.下载并解压到安装目录 python setup.py install //安装 2.下载链接: ...1.其实之前遇到pyc反编译都是在https://tool.lu/pyc/上面直接反编译, 直到我遇到了hackme.inndy.tw上的pyyy,...
  • pyc文件反编译为python代码

    千次阅读 2019-06-25 15:50:15
    pyc文件反编译为python代码在线工具新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右...
  • [131]python反编译工具

    千次阅读 2018-06-23 13:38:19
    一看这个标题,就是搞坏事用的, 用 java 写程序多了,很习惯用反编译工具了,而且玩java 的人认为那是很正常的事。所以很多商业应用的java 程序都用了混淆器或者自己写了classloader,防止别人反编译,其实理论上...
  • 为了了解TCAX的文件结构,这几天开始尝试反编译pyc文件,折腾了一番终于搞定了。 注:本文主要是写给TCAX开发者看的,新人暂时先用TCAX论坛内的TCAX Studio或者TCAX Creator做特效字幕就行。 具体操作步骤如下 ...
  • 如何反编译pyc文件

    千次阅读 2021-03-05 12:22:24
    如何将.pyc和.pyo文件反编译为.py文件pyc大约在python2刚出的时候有。后来就很少找得到了。有一次,不小心把.py删除了,通过pyc还把代码还原了。 你搜索uncompyle2, decompyle2, DePython, unpyc, uncompyle, pycdc...
  • 反编译exe工具

    2019-02-13 13:57:41
    对于pyinstaller生成的exe解压之后的pyc乱码文件 ,生成可以阅读的源码,完成了反编译
  • pyc文件反编译到Python源码

    万次阅读 2016-09-13 22:05:54
    pyc文件反编译成python源代码
  • 因为这个是python的反编译问题,所以IDA和die、ExeinfoPe这些工具就没用了。 我显示在bing上搜索,参照这位大佬的做法开始实验((7条消息) pyc文件逆向_攻防世界python-trade_逆向之旅010_duang_duang_yang的博客-...
  • python2.6 pyc反编译

    万次阅读 2014-01-25 00:24:24
    同学请我帮他反编译下几个pyc文件,生成pyc文件的python版本是2.6.6 尝试了以下几个工具: 【1】uncompyle2 github:https://github.com/wibiti/uncompyle2 之前用过,但是有个限制是必须是python2.7以上生成的...
  • 超好用的python批量反编译软件

    热门讨论 2014-02-10 09:39:44
    很好用的python反编译软件,亲测python2.7反编译成功。 支持批量反编译,美中不足的是不支持嵌套文件夹中的反编译
  • 常用pyc转py的工具 pycdc Decompyle++ Decompyle++旨在将编译后的Python字节码转换回有效的、人类可读的Python源代码。虽然其他项目取得了不同程度的成功,但Decompyle++的独特之处在于,它寻求支持来自任何版本的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,875
精华内容 750
关键字:

pyc反编译工具