⑴ python写一个命令行工具(基于uncompile6的反编译小工具)
在处理没有源码的python包时,使用uncompile6进行反编译能提供便利。但面对大量包文件,逐一操作显得繁琐。为此,自建命令行工具以一键反编译指定目录下的pyc文件,成为更高效的解决方案。
通过使用sys.argv获取命令行输入,例如"uncompile6 -o xxx.py xxx.pyc",解析参数为['uncompile6 ', '-o', 'xxx.py', 'xxx.pyc'],实现对多个pyc文件的批量处理。
在制作安装包过程中,entry_points属性至关重要。它定义了命令名称(decompile_pyc)和对应的main函数入口(decompile包下decompile_pyc.py的main函数),确保命令行命令能正确执行。
在setup.py目录下,执行"sdist"生成tar.gz文件,"bdist_wheel"生成whl文件,完成安装包的制作。安装完成后,直接在命令行输入相应的命令,即可实现一键反编译。
关于上传包到pypi的步骤,官方有详细说明,这里不再赘述,确保包的发布符合标准。
⑵ python写的程序,转成了exe文件,怎么进行反编译为python源码
1、电脑桌面,输入“win+R”组合键,在弹出窗口中输入“cmd”,点击确定。
⑶ python生成exe文件与exe文件的反编译
一、Python生成exe文件
1.使用Anaconda Prompt
通过打开Anaconda Prompt,切换到项目使用的环境,运行pyinstaller命令,生成的exe文件会自动存放于默认路径下的dist文件夹内。
2.使用命令行窗口cmd
设置好三个环境变量,特别是pyinstaller文件夹路径,打开cmd后,直接输入pyinstaller命令,生成的exe文件将会被放置在cmd路径下的dist文件夹中。
二、exe文件反编译成py文件
1.从exe文件转pyc文件
下载pyinstxtractor工具,使用在Prompt或cmd中运行,生成的文件夹main.exe_extracted中可以找到main.pyc文件。
2.从pyc文件转回exe
安装反编译工具uncompyle6,运行在Prompt或cmd中,生成main.py文件。
三、pyinstaller参数总结
-F, –onefile: 打包为单个文件,适用于单个.py文件的代码。
-D, –onedir: 打包多个文件,适用于框架形式的工具代码,便于维护。
-K, –tk: 包含TCL/TK。
-a, –ascii: 不包含编码,默认在支持Unicode的版本上包含所有编码。
-d, –debug: 生成调试版本的可执行文件。
-w, –windowed, –noconsole: 窗口模式执行,不开启命令行窗口(仅适用于Windows)。
-c, –nowindowed, –console: 控制台模式执行。
-s, –strip: 通过strip压缩可执行文件和共享库,注意Cygwin的strip可能影响普通Win32 DLL。
-X, –upx: 使用UPX压缩执行文件及Windows中的DLL。
-o DIR, –out=DIR: 指定输出目录。
-p DIR, –path=DIR: 设置导入路径。
-i ICO_PATH, –icon=ICO_PATH: 添加图标至可执行文件。
-v VERFILE, –version=VERFILE: 添加版本信息。
-n NAME, –name=NAME: 指定项目名称。
四、参考资料
详细参考资料包括但不限于官方文档和社区教程,用于深入理解使用方法和参数细节。
⑷ python-uncompyle反编译
python的编译后文尺蔽件pyc,可以将pyc文件反编译为py文件。
相应的工具: uncompyle
github地址: https://github.com/rocky/python-uncompyle6/
安装: pip install uncompyle
安装好后,注碰困衫意执行的命令为 uncompyle6 ,而不是 uncompyle 。
查看帮助命令:笑腔 uncompyle6 --help 、 uncompyle6 -h
反编译单个文件 : uncompyle6 foo.pyc > foo.py
反编译多个文件: uncompyle6 -o . *.pyc
例子: