最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

一文學(xué)會如何將Python打包后的exe還原成.py

 更新時(shí)間:2022年11月15日 15:40:14   作者:宋宋講編程  
反編譯的第一步就是要將exe文件轉(zhuǎn)換成py文件,下面這篇文章主要給大家介紹了如何通過一文學(xué)會將Python打包后的exe還原成.py的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

我們介紹過如何將python程序打包為exe可執(zhí)行文件。但有時(shí)候會遇到另一種情況,就是我們拿到別人打包好的exe文件,但是我想看看里面源代碼是怎樣的,這個(gè)能不能實(shí)現(xiàn)呢?

如果是用py打包而成的exe,是可以還原成py文件的,今天我們就給大家分享一下這個(gè)過程。

用到的工具

  • pyinstxtractor.py 拆包(解壓)工具,將exe文件解壓成一個(gè)文件夾
  • uncompyle6 pyc反編譯工具
  • 010EditorEditor 或者其他二進(jìn)制查看與修改工具,我這里用的010Editor

安裝方法

pip install uncompyle6

第一步:解包

python3 pyinstxtractor.py ***.exe   #  這里替換成你要反編譯的exe文件
#  會生成一個(gè)以 exe文件名+_extracted 的文件夾,這個(gè)就是解包后的數(shù)據(jù)

第二步:添加頭信息

PyInstaller打包后,pyc文件的前8個(gè)字節(jié)會被抹掉,所以最后要自己添加回去。前四個(gè)字節(jié)為python編譯的版本,后四個(gè)字節(jié)為時(shí)間戳。想要獲得編譯版本可以查看打包文件里struct的信息

1). 進(jìn)入文件夾,找到以exe文件名命名的文件(沒有后綴),這個(gè)就是目的文件

2). 用 010Editor 打開 struct,前八位就是我們想要的信息,將其復(fù)制

3). 用 010Editor 打開目的文件我這里是 abc_text,將上一步復(fù)制的信息插入到開頭

修改前:

修改后:

4). 將目的文件我這里是 abc_text,添加pyc的后綴

第三步:逆向目的文件.pyc

1). 其實(shí)這里已經(jīng)可以使用了。了解python的都知道pyc是py文件編譯后的二進(jìn)制文件,因此如果想要分析源碼還得繼續(xù)逆向成.py文件

2). uncompyle6逆向pyc文件

uncompyle6 abc_text.pyc > abc_text.py

如此就成功逆向還原出py文件。

總結(jié)

到此這篇關(guān)于如何將Python打包后的exe還原成.py的文章就介紹到這了,更多相關(guān)Python打包后exe還原成.py內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

徐闻县| 丰宁| 江阴市| 嘉峪关市| 绥滨县| 芦溪县| 株洲市| 佛冈县| 通海县| 大宁县| 河间市| 泊头市| 平塘县| 昌乐县| 望奎县| 迁西县| 潜江市| 梁山县| 饶河县| 顺平县| 嵊州市| 西丰县| 涪陵区| 无极县| 大邑县| 景宁| 卢湾区| 长沙县| 轮台县| 垦利县| 荆门市| 新邵县| 新津县| 喜德县| 平江县| 遵义县| 黄平县| 布拖县| 台前县| 长乐市| 石首市|