Als ich versuchte, ein Programm, das Google Api (Tabellenkalkulation) verwendet, mit PyInstaller in eine ausführbare Datei zu konvertieren, konnte ich es kompilieren, aber zur Laufzeit trat ein Fehler auf. Das kompilierte Programm ist wie folgt
main.py
from googleapiclient.discovery import build
#Folgendes wird weggelassen
Hier,
pyinstaller --onefile main.py
./dist/main #Erfolgreiche Kompilierung und eine ausführbare Datei
Wenn Sie nun die ausführbare Datei ausführen,
pkg_resources.DistributionNotFound: The 'google-api-python-client' distribution was not found and is required by the application
:middle_finger_tone2::laughing::middle_finger_tone2:
Stellen Sie die Version von google-api-client auf *** 1.8.0 *** ein. Es geht darum, Folgendes zu tun:
pip install google-api-python-client==1.8.0
Was für eine bahnbrechende Lösung! !! !! !!
Nur als Referenz ist die Ausführungsumgebung
Bei der Verwendung von Google-könnte-Vision oder Firestore habe ich einen Artikel über ähnliche Fehler gesehen, der jedoch nicht sehr hilfreich war. In jedem Beispiel bin ich auf "pkg_resources.DistributionNotFound" gestoßen, also dachte ich, ich könnte mit der gleichen Lösung arbeiten, aber ich konnte es überhaupt nicht und die Zeit schmolz. Immerhin wurde es durch Problemdiskussion auf Github von Google-API-Client gelöst. Ich habe cx_Freeze als Alternative zu PyInstaller ausprobiert, konnte es aber doch nicht. Ich weiß nicht, wie lange dieses Problem auftreten wird (bis PyInstaller / Google antwortet?), Und ich weiß nicht, wie lange diese Methode es lösen wird. Verwenden Sie es daher als Referenz. Ich wollte auch, dass Python eine Methode für offiziell (plattformübergreifende) ausführbare Dateien wie Golang etabliert.