2013-08-18 2 views
3

У меня есть exe build pyinstaller, поэтому я распакую его, и теперь я хочу распаковать файл * .pyz, где содержатся все файлы сценариев, но имена файлов без расширений (только имена файлов и is_packet в кортеж True \ False). Список файлов примеров, где возвращается ZlibКак декомпилировать файлы из файла PyInstaller PYZ

BeautifulSoup 
ConfigParser 
HTMLParser 
PyQt4 
Queue 
StringIO 
UserDict 
_LWPCookieJar 
_MozillaCookieJar 
__future__ 
_abcoll 
_strptime 
_threading_local 

Как вы можете видеть, файлы без расширений и всех файлов зашифрованы. Пример этих распакованных файлов: http://www.sendspace.com/file/pky00m

Итак, как я могу декомпилировать его? Благодаря

+0

Pyz файл является архивным файлом. Используйте файл archiveviewer.py, предоставленный с помощью pyinstaller для просмотра и извлечения таких архивов. –

ответ

6

Я написал python script, который будет принимать pyinstaller генерируется файл ех и извлечь его содержимое, включая файл Pyz и каждую вещь в

После использования этого использования сценария Easy Python Decompiler декомпилировать сгенерированный PYC файлы ,

Если вас больше интересует, Я написал подробный документ об обращении с таким приложением. Ссылка здесь.

http://tuts4you.com/download.php?view.3541

+0

Как вы определяете, какой декомпилированный .pyc является сценарием «запись», по сравнению со всеми модулями и библиотечными файлами? – Demonslay335

+0

@ Demonslay335 Скрипт ввода обычно находится в корневом каталоге в декомпилированной папке. Он хранится как есть (т. Е. Не скомпилирован) в рамках CArchive. Поэтому вы можете попробовать открыть эти файлы в текстовом редакторе, чтобы узнать их. –

+0

Выглядит многообещающе. Я получаю: SyntaxError: (unicode error) 'unicodeescape' кодек не может декодировать байты в позиции 841-842: усеченный \ UXXXXXXXX escape – Tetora