Nutzung von externen Module (z.B. pyserial) ohne Installation

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
TarteTatin
User
Beiträge: 2
Registriert: Donnerstag 17. September 2020, 08:08

Moin moin,

ich bin relativ neu in Python und nutze ich letzter Zeit vermehrt Python beruflich zur Administration.

Meine bisherigen Administration-Skripte waren entweder in Batch oder Visual Basic Script programmiert. Also mehr oder minder tote Sprachen. Dinge wie Werte aus der Registry (Windows) lesen oder einen Datei öffnen Dialog anzeigen machen unter diesen Sprachen keinen Spaß. Und davon möchte ich wegkommen.

Leider hat dieser Wunsch einen kleinen Haken bezüglich der Firma in welchem ich die Skripte einsetzen möchte. Die Installation muss sehr einfach sein. Dinge wie pip install sind für andere zu kompiliziert und auch schnell unerwünscht. Des öfteren passiert es nämlich dass das Skript in einem anderen Bereich eingesetzt werden muss. Also wird der Ordner kopiert, entsprechend angepasst und verwendet. Und meistens unter Zeitdruck.

Deswegen wollte ich mal fragen ob es möglich ist, einzelne Module in den Pfad des Scriptes zu legen ohne dieses mittels pip zu installieren.

Beispiel:

Ich habe einen Ordner "Device XYZ" und darin liegt das Script "CheckDevice.py". Dieses Skript möchte mittels seriellen Port das Gerät ansprechen. Im konkreten Fall wird da ein Info Befehl an das Gerät geschickt und die Antwort überprüft. Hierfür will ich pyserial nehmen. Dieses müsste aber im Ordner liegen, da wie schon gesagt eine Installation unerwünscht ist.
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Mit Tools wie pyinstaller kannst du einen geschlossenen Installer erstellen. Solltest du dir mal anschauen.
Jankie
User
Beiträge: 592
Registriert: Mittwoch 26. September 2018, 14:06

Du könntest eine .exe daraus machen mit Hilfe von PyInstaller.
TarteTatin
User
Beiträge: 2
Registriert: Donnerstag 17. September 2020, 08:08

Danke für die Antworten, die helfen mir schon weiter

Ich habe mir diesbezüglich mal die virtuelle Python Umgebung angeschaut (Befehl python -m venv -h) angeschaut.

Habe aber auch die Seite https://stackoverflow.com/questions/676 ... -full-path gefunden. Werde die Lösungen mal ausprobieren...
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

virtualenv ist keine Lösung für dein Problem. Da installierst du weiter munter mit pip. Es isoliert nur verschiedene Projekte.
Benutzeravatar
DeaD_EyE
User
Beiträge: 1021
Registriert: Sonntag 19. September 2010, 13:45
Wohnort: Hagen
Kontaktdaten:

Eine Alternative zu PyInstaller ist pynsist: https://pypi.org/project/pynsist/
Anstelle alles in eine .exe Datei zu packen, wird ein Installer ausgeführt, der auch Python + Abhängigkeiten installiert.
sourceserver.info - sourceserver.info/wiki/ - ausgestorbener Support für HL2-Server
Antworten