Python generiert Exe-Dateien und dekompiliert Exe-Dateien

1. Python generiert exe-Dateien

1. Verwenden Sie die Anaconda-Eingabeaufforderung

(1).Öffnen Sie die Anaconda-Eingabeaufforderung.

pip install PyInstaller -i https://pypi.tuna.tsinghua.edu.cn/simple
# 使用了清华镜像
# 由于pyinstaller生成exe文件时会把所在的虚拟环境的所有包都进行打包,所以建议新建一个虚拟环境安装pyinstaller,并在新建的环境安装需要转exe文件的py文件import的包

(2) Wechseln Sie in Prompt zu der vom Projekt verwendeten Umgebung und führen Sie dann pyinstaller aus

pyinstaller -F -w  C:\Users\main.py
# -F 生成单一exe文件
# -w 不调用控制台

(3) Die generierte Exe-Datei befindet sich im Dist-Ordner unter dem Standardpfad von Prompt.

2. Verwenden Sie das Befehlszeilenfenster cmd

(1) Legen Sie die drei Umgebungsvariablen fest und konzentrieren Sie sich dabei auf den Pfad, in dem sich der dritte Pyinstaller-Ordner befindet.

# D:\CS\anaconda3(python.exe的路径)
# D:\CS\anaconda3\Scripts(pip.exe的路径)
# D:\CS\anaconda3\Lib\site-packages(pyinstaller等扩展包的路径)
# 每个人的安装路径不同,上面是我的安装路径sQW

(2).Öffnen Sie cmd

pip install PyInstaller -i https://pypi.tuna.tsinghua.edu.cn/simple

(3).Direkte Eingabe

pyinstaller -F -w C:\Users\main.py

(4). Die generierte exe-Datei befindet sich im Ordner dist unter dem cmd-Pfad.

2. Dekompilieren Sie die exe-Datei in eine py-Datei

1.exe-Datei in die Pyc-Datei

(1). Laden Sie pyinstxtractor herunter, URL: https://github.com/extremecoders-re/pyinstxtractor

# 这里我吐槽一下,知乎和CSDN上的相关文章给的安装包版本太老了,里面的imp包python3.4以后就不适用了,直接用会报错,还要花积分,建议从github上直接下载

(2).Prompt oder cmd

python pyinstxtractor.py main.py
#cmd中要将python.exe所在路径添加到环境变量

(3) Generieren Sie den Ordner main.exe_extracted unter dem Pfad von Prompt oder cmd, und Sie können main.pyc finden

2. Konvertieren Sie die Pyc-Datei in eine Exe

(1).Installieren Sie das Dekompilierungstool uncompyle6

pip install uncompyle6
# 模块原网址:https://github.com/rocky/python-uncompyle6
# 这是github上认可度最好的反编译工具,也是上面pyinstxtractor推荐的工具

(2).Prompt oder cmd

uncompyle6 main.pyc > main.py
# 反编多个文件 uncompyle6 -o . *.pyc

(3) Generieren Sie main.py im Pfad von Prompt oder cmd

Parameterzusammenfassung:

  • -F, –onefile packt eine einzelne Datei. Wenn Ihr Code vollständig in einer .py-Datei geschrieben ist, können Sie dies verwenden. Wenn mehrere .py-Dateien vorhanden sind, verwenden Sie es nicht.
  • -D, –onedir packt mehrere Dateien und generiert viele Abhängigkeitsdateien in dist, was zum Schreiben von Toolcode in Form eines Frameworks geeignet ist. Ich persönlich empfehle dies, da der Code einfach zu warten ist.
  • -K, –tk schließen TCL/TK bei der Bereitstellung ein
  • -a, –ascii enthält keine Kodierung. Alle Kodierungen sind standardmäßig in Python-Versionen enthalten, die Unicode unterstützen.
  • -d, –debug generiert eine Debug-Version der ausführbaren Datei
  • -w,–windowed,–noconsole Verwenden Sie zum Ausführen das Windows-Subsystem. Die Befehlszeile wird beim Start des Programms nicht geöffnet (nur gültig für Windows).
  • -c,–nowindowed,–console

Mit dem Konsolensubsystem ausführen (Standard) (nur für Windows gültig)

pyinstaller -c xxxx.py

pyinstaller xxxx.py --console
  • -s, --strip Ausführbare Dateien und gemeinsam genutzte Bibliotheken werden über Strip ausgeführt. Beachten Sie, dass Cygwins Strip häufig normale Win32-DLLs unbrauchbar macht.
  • -X, –upx Wenn UPX installiert ist (wird beim Ausführen von „Configure.py“ erkannt), wird die ausführbare Datei komprimiert (ebenso wie DLLs in Windows-Systemen) (siehe Hinweis)
  • -o DIR, –out=DIR gibt das Generierungsverzeichnis der Spezifikationsdatei an. Wenn nicht angegeben und das aktuelle Verzeichnis das Stammverzeichnis von PyInstaller ist, wird automatisch ein Verzeichnis für die Ausgabe (Spezifikation und generierte ausführbare Dateien) erstellt. Wenn nicht angegeben und das aktuelle Verzeichnis nicht das Stammverzeichnis von PyInstaller ist, wird es in das aktuelle Verzeichnis ausgegeben.
  • -p DIR, –path=DIR legt den Importpfad fest (ähnlich dem Effekt der Verwendung von PYTHONPATH). Sie können Pfadtrennzeichen (Semikolon unter Windows, Doppelpunkt unter Linux) verwenden, um mehrere Verzeichnisse anzugeben. Sie können auch mehrere -p-Parameter verwenden, um Legen Sie mehrere Importpfade fest und lassen Sie Pyinstaller die vom Programm benötigten Ressourcen finden.
  • –icon=<DATEI.ICO>
  • Fügen Sie file.ico als Ressource der ausführbaren Datei hinzu (nur gültig für Windows-Systeme), ändern Sie das Programmsymbol pyinstaller -i ico path xxxxx.py
  • –icon=<FILE.EXE,N> Das n-te Symbol von file.exe als Ressource der ausführbaren Datei hinzufügen (nur gültig für Windows-Systeme)
  • -v FILE, –version=FILE Verfile als Versionsressource der ausführbaren Datei verwenden (nur gültig für Windows-Systeme)
  • -n NAME, –name=NAME Optionaler Projektname (generierte Spezifikation). Wenn er weggelassen wird, wird der Hauptdateiname des ersten Skripts als Name der Spezifikation verwendet

Supongo que te gusta

Origin blog.csdn.net/meimeieee/article/details/126800822
Recomendado
Clasificación