πŸ”ΠšΠ°ΠΊ Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈΠ· .exe Ρ„Π°ΠΉΠ»Π° Python?

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΊΠΎΠ΄ ΠΈΠ· исполняСмого Ρ„Π°ΠΉΠ»Π° .exe Python, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ инструмСнты, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ py2exe ΠΈΠ»ΠΈ pyinstaller. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования pyinstaller:

    pyinstaller --onefile script.py
  
Π­Ρ‚ΠΎ создаст исполняСмый Ρ„Π°ΠΉΠ» script.exe. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ исходный ΠΊΠΎΠ΄ ΠΈΠ· этого Ρ„Π°ΠΉΠ»Π°, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ decompyle3:

    decompyle3 script.exe > script.py
  
Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ вас Π±ΡƒΠ΄Π΅Ρ‚ Ρ„Π°ΠΉΠ» script.py с исходным ΠΊΠΎΠ΄ΠΎΠΌ вашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈΠ· exe python

Иногда Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ситуация, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ исходный ΠΊΠΎΠ΄ ΠΈΠ· исполняСмого Ρ„Π°ΠΉΠ»Π° (.exe) Π½Π° языкС Python. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ссли Π²Ρ‹ потСряли исходный ΠΊΠΎΠ΄ вашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ просто Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ‡ΡƒΠΆΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я расскаТу Π²Π°ΠΌ ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… способах Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈΠ· exe python.

1. Disassembler

Один ΠΈΠ· способов ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ исходный ΠΊΠΎΠ΄ ΠΈΠ· exe-Ρ„Π°ΠΉΠ»Π° - это ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ disassembler, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ uncompyle6. Disassembler ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² исходный ΠΊΠΎΠ΄ Π½Π° языкС Python.

pip install uncompyle6

ПослС установки Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ для дСкомпиляции исполняСмого Ρ„Π°ΠΉΠ»Π°:

uncompyle6 -o output_folder input_file.exe

Π“Π΄Π΅ output_folder - это ΠΏΠ°ΠΏΠΊΠ°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±ΡƒΠ΄ΡƒΡ‚ сохранСны Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΈ input_file.exe - это ΠΏΡƒΡ‚ΡŒ ΠΊ исходному исполняСмому Ρ„Π°ΠΉΠ»Ρƒ.

2. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ дизассСмблирования

Π”Ρ€ΡƒΠ³ΠΎΠΉ способ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° языкС Python ΠΈΠ· exe-Ρ„Π°ΠΉΠ»Π° - ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ инструмСнты дизассСмблирования, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ IDA Pro ΠΈΠ»ΠΈ Ghidra. Π­Ρ‚ΠΈ инструмСнты ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ ΠΊ ΠΊΠΎΠ΄Ρƒ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… уровнях абстракции.

IDA Pro ΠΈ Ghidra ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ сгСнСрированный ассСмблСрный ΠΊΠΎΠ΄, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ структуру ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π₯отя это Π½Π΅ являСтся прямым доступом ΠΊ исходному ΠΊΠΎΠ΄Ρƒ Π½Π° языкС Python, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ это для изучСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ получСния ΠΎΠ±Ρ‰Π΅Π³ΠΎ прСдставлСния ΠΎ Π΅Π΅ Π»ΠΎΠ³ΠΈΠΊΠ΅.

3. Decompiler

НаконСц, Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ способ - ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ decompiler для прСобразования исполняСмого Ρ„Π°ΠΉΠ»Π° ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² исходный ΠΊΠΎΠ΄ Python. Один ΠΈΠ· популярных дСкомпиляторов для языка Python - это uncompyle6, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ я ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π» Π²Ρ‹ΡˆΠ΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΉ исходный ΠΊΠΎΠ΄ ΠΈΠ· exe-Ρ„Π°ΠΉΠ»Π°.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ uncompyle6 для дСкомпиляции исполняСмого Ρ„Π°ΠΉΠ»Π°, установитС Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

pip install uncompyle6

Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ исходный ΠΊΠΎΠ΄ Python:

uncompyle6 -o output_folder input_file.exe

Π“Π΄Π΅ output_folder - это ΠΏΠ°ΠΏΠΊΠ°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±ΡƒΠ΄ΡƒΡ‚ сохранСны Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΈ input_file.exe - это ΠΏΡƒΡ‚ΡŒ ΠΊ исходному исполняСмому Ρ„Π°ΠΉΠ»Ρƒ.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈΠ· исполняСмого Ρ„Π°ΠΉΠ»Π° Python ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слоТной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ, Π½ΠΎ с использованиСм disassembler, инструмСнтов дизассСмблирования ΠΈΠ»ΠΈ дСкомпилятора Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ исходному ΠΊΠΎΠ΄Ρƒ ΠΈ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ.

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ дСкомпиляция ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ€ΡƒΡˆΠ°Ρ‚ΡŒ авторскиС ΠΏΡ€Π°Π²Π° ΠΈ Π·Π°ΠΊΠΎΠ½Ρ‹ ΠΎ Π·Π°Ρ‰ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΡ€Π°Π²ΠΎΠ²ΡƒΡŽ основу для провСдСния Ρ‚Π°ΠΊΠΎΠΉ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

РСвСрсинг python ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΠΎΡ‡Π΅ΠΌΡƒ python Π½Π΅ бСзопасСн

Python Π² .EXE β–Ί КАК?

Python Π² EXE

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ” Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π·Π½Π°ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π° Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅ πŸ–₯️

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ элСмСнта массива Python? πŸ§πŸ”Ž

Как пСрСвСсти число ΠΈΠ· дСсятичной систСмы Π² Π»ΡŽΠ±ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅? πŸ”„πŸ”’

πŸ”ΠšΠ°ΠΊ Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈΠ· .exe Ρ„Π°ΠΉΠ»Π° Python?

πŸ”’ Как ΠΏΠΎΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ количСство Π±ΡƒΠΊΠ² Π² строкС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python?

🐍Бколько стоит королСвский ΠΏΠΈΡ‚ΠΎΠ½ Π±Π΅Π»Ρ‹ΠΉ Ρ†Π΅Π½Π°: Π£Π·Π½Π°ΠΉΡ‚Π΅ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ этой экзотичСской ΠΈ Ρ€Π΅Π΄ΠΊΠΎΠΉ Π·ΠΌΠ΅ΠΈ!

πŸš€ΠšΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ массив с нулями Π² Python: простоС руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ