Найти - Пользователи
Полная версия: Декомпиляция Python
Начало » Python для экспертов » Декомпиляция Python
1
knkd
Есть ли простой в обращении декомпилятор *.pyc файлов? ()
Вот для Java пользуюсь Java-decompiler - очень полезно.
Особенно наводят на размышление случаи когда восстановленный из классов код не соответствует исходникам. Как правило оказывается что в этом месте что-то сделано через (_*_).

Быстрый поиск простых инструментов не обнаружил :(
Ferroman
“Простых” это каких? И как вы искали?
knkd
Ferroman
И как вы искали?
Так и искал :)
На WinXP-SP3_Python-2.6.2 не работал без указания причины.
Разбираться глубже не стал - квалификация не та.

Ferroman
“Простых” это каких?
Ну так чтоб для конечного пользователя - включил и работает :)
poltergeist
Ещё:
http://depython.com/
http://sourceforge.net/projects/unpyc/
Андрей Светлов
Если exception и stacktrace не помогли - то, имхо, декомпилер вам тоже ничего не даст.
Тем более я бы не называл его “продуктом для конечного пользователя”.
knkd
Андрей Светлов
Если exception и stacktrace не помогли - то, имхо, декомпилер вам тоже ничего не даст.
Тем более я бы не называл его “продуктом для конечного пользователя”.
Ну вот для примера тот же самый Java-decompiler. Запускаю - работает.
Натравливаю на свои файлы - вижу на месте условия одного из циклов кучу непонятного кода - нахожу ошибку, которая при простом просмотре и во время исполнения далеко не очевидна.

Конечный пользователь языка программирования.
Андрей Светлов
На Питоне вы увидите ровно то, что было в исходниках.
Если брался не тот модуль - это проще спросить через __file__
Так что я очень скептически отношусь.
Другое дело - посмотреть в дизассемблер dis.dis(…)
Там кое-что можно увидеть. В основном - для оптимизации, но и пониманию “как оно работает” тоже помогает.
knkd
Андрей Светлов
На Питоне вы увидите ровно то, что было в исходниках.
Жаль.
В яве кое что меняется. В основном по мелочи (переносится место объявления переменной например)
Но иногда и заметно. В основном тогда когда что-то неправильно.
TypeSafe
knkd
Есть ли простой в обращении декомпилятор *.pyc файлов? ()
Вот для Java пользуюсь Java-decompiler - очень полезно.
http://decompiler.com/ и Java и Питон декомпилирует. И всё онлайн прямо на сайте.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB