Installation von Python 3 plus additional libraries

Probleme bei der Installation?
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

Hallo liebe Python Community. :wink:

Ich benötige mal bitte eure Hilfe, möchte gern ein privates Tool installieren, das ich von einem Kollege habe, dazu muss allerdings erstens ein paar Voraussetzungen erfüllt werden. In erster Linie geht es darum, wie man folgendes installieren kann, siehe unten:

Als Voraussetzung wird angegeben:
Python 3 plus additional libraries in der Voraussetzungs-Datei (requirements) heißt es:

Code: Alles auswählen

certifi==2018.11.29
chardet==3.0.4
Click==7.0
colorama==0.4.1
idna==2.8
requests==2.21.0
selenium==3.141.0
tqdm==4.31.1
urllib3>=1.24.2
wincertstore==0.2
Aktuell habe ich Python 2.7.18 installiert.

Wäre nett, wenn mir da jemand unter die Arme greifen könnte, wie man die zusätzliche Bibliotheken installieren kann mit Python :)

Gruß.
Benutzeravatar
sparrow
User
Beiträge: 4195
Registriert: Freitag 17. April 2009, 10:28

Python 2.7 ist EOF und wird seit Janren nicht mehr weiter entwickelt und bekommt auch seit Jahren keine Sicherheitspatches mehr. Wenn du keinen guten Grund hast, warum das noch auf deinem System ist, ist es unnötig.

Und du schreibst ja schon im Titel, dass du Python 3 installieren möchtest. Mach mal.
Dann sollte doch der Kollege der erste Ansprechpartner für Support sein?

Man installiert zusätzliche Pakete mit "pip". Das kennt den Befehl "install" und Pakete zu installieren und die Option "-r" um eine Datei anzugeben, in der die Abhängigkeiten stehen.

Code: Alles auswählen

/pfad/zum/python_interpreter -m pip install -r datei
Da du kein Python 3 installiert hast, gehe ich nicht davon aus, dass du eine separte Umgbebung für die Pakete brauchst.
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

sparrow hat geschrieben: Sonntag 4. Februar 2024, 16:00 Python 2.7 ist EOF und wird seit Janren nicht mehr weiter entwickelt und bekommt auch seit Jahren keine Sicherheitspatches mehr. Wenn du keinen guten Grund hast, warum das noch auf deinem System ist, ist es unnötig.
Sehr vielen Dank für die Rückantwort.
Sehe ich dann auch so, hatte damals etwas ausprobiert und dann Python seither nicht mehr verwendet.
Und du schreibst ja schon im Titel, dass du Python 3 installieren möchtest. Mach mal.
Dann sollte doch der Kollege der erste Ansprechpartner für Support sein?
Eigentlich nicht, derjenige ( praktisch ein Internet-Kollege, nur Englischsprachig) hatte das mal vor einiger Zeit bzw. vor Jahren geschrieben, es ist so ein Tool das für FB verwendet wird für Marketing-Dinge zu Scrapen. Er möchte sich damit auch nicht mehr beschäftigen, hat nur gemeint, ich könnte dies mal ausprobieren. Da ich nämlich nach so einer speziellen Lösung danach auf der Suche bin.

Keine Ahnung, ob das alte Script noch funktioniert.
Man installiert zusätzliche Pakete mit "pip". Das kennt den Befehl "install" und Pakete zu installieren und die Option "-r" um eine Datei anzugeben, in der die Abhängigkeiten stehen.

Code: Alles auswählen

/pfad/zum/python_interpreter -m pip install -r datei
Da du kein Python 3 installiert hast, gehe ich nicht davon aus, dass du eine separte Umgbebung für die Pakete brauchst.
Werde ich dann mal testen, vielleicht gegen später dann.

Werde dann morgen eine Rückantwort geben, es dazu noch dann weiter geht mit dem Befehlsprozess:

Code: Alles auswählen

$ python ScrapFB.py
$ python ScrapFB.py -l [login mail] -p [pw to facebook] -t [target ID]
Ich muss dann folgendes eingeben in der CMD um das Python Script zu starten:

Code: Alles auswählen

 C:\Users\MeinName> cd C:\Users\MeinName\Desktop\Ordnername
... python ScrapFB.py
Das Zeichen [$] ist wohl nur bei Linux bei Windows ist das [>>], wenn ich mich nicht täusche.



Ich hatte zuvor ausprobiert, welche Version ich drauf habe, da ich das selbst nicht mehr wusste.
Mir ist dabei aber noch was aufgefallen, siehe unten:

Zum Starten:

Code: Alles auswählen

CMD /  Win-Taste+R dann CMD eingeben -> dann öffnet sich die CMD-Konsole.
Dann wird dort angezeigt:

Code: Alles auswählen

C:\Users\MeinName>  
Darauf gebe ich den Zielpfad ein von der Python.exe 
 C:\Python27/python
Endresultat: C:\Users\MeinName>C:\Python27/python
Dann wird die Version angezeigt und Python startet.


Wenn ich dann aber den Befehl verwende speziell für die Version auslesen:

Code: Alles auswählen

python --version 
Erhalte ich folgende Meldung:
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'python' is not defined
Wenn ich dann rausgehe aus Python mit dem Befehl:

Code: Alles auswählen

exit() 
Den gleichen Befehl eingebe, erhalte ich die Meldung:
Der Befehl "python" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Wenn ich den Befehl eingebe in der normalen CMD Konsole :

Code: Alles auswählen

C:\Python27/python --version
wird dies angezeigt.

Ich glaube das hängt mit der Installation zusammen, da stand iwie was daran mit Pfad hinzufügen, ich glaube damals habe ich das einfach nicht gemacht bzw. das Häkchen nicht gesetzt.
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

sparrow hat geschrieben: Sonntag 4. Februar 2024, 16:00 Man installiert zusätzliche Pakete mit "pip". Das kennt den Befehl "install" und Pakete zu installieren und die Option "-r" um eine Datei anzugeben, in der die Abhängigkeiten stehen.

Code: Alles auswählen

/pfad/zum/python_interpreter -m pip install -r datei
1. Ich habe jetzt Python 3 bzw. die Version 3.8 installiert.

Habe dazu die Pfade entsprechend eingetragen in der Rubrik: Umgebungsvariablen:
Unter Benutzervariablen als auch Systemvariablen:
C:\Users\Name\AppData\Local\Programs\Python\Python38
C:\Users\Name\AppData\Local\Programs\Python\Python38\Scripts

Wenn ich jetzt bei CMD phyton --version eingebe erhalte ich immer die Meldung:
Der Befehl "python" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.

Update:
Habe ich soweit jetzt gelöst und funktioniert.
Habe dazu evtl. später noch eine Frage, dazu jetzt aber zu dem nächsten Schritt das Installieren von den Pakten.


2. Der Pfad von der requirements.txt ist folgendermaßen C:\Users\Name\Desktop\Finder-Tool
Ich müsste dann folgenden Befehl eingeben, siehe unten?
C:\Users\Name\Desktop\Hidden-Friends-Finder-master -m pip install -r requirements.txt
Zuletzt geändert von theSnake am Dienstag 6. Februar 2024, 18:25, insgesamt 1-mal geändert.
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Nein, der Befehl muss

Code: Alles auswählen

<pfad-zum-python-interpreter> -mpip install -r requirements.txt
lauten.

phyton ist auch falsch geschrieben. Es heisst python. Und was die Variablen sein sollen, ist unklar. Das muss in PATH, so wie du das da stehen hast, ist es nicht richtig. Alternativ kann man aber auch einfach den vollen Pfad zur Python-EXE verwenden.

Und zu guter Letzt: das wird wahrscheinlich alles fuer die Katz sein, denn wenn der Kollege sich nicht mehr fuer die Wartung interessiert, und du kein Python kannst, dann wird das garantiert nicht mehr gehen, so oft wie Facebook an seiner Seite schraubt.
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

__deets__ hat geschrieben: Dienstag 6. Februar 2024, 18:13 Nein, der Befehl muss

Code: Alles auswählen

<pfad-zum-python-interpreter> -mpip install -r requirements.txt
lauten.

phyton ist auch falsch geschrieben. Es heisst python. Und was die Variablen sein sollen, ist unklar. Das muss in PATH, so wie du das da stehen hast, ist es nicht richtig. Alternativ kann man aber auch einfach den vollen Pfad zur Python-EXE verwenden.

Und zu guter Letzt: das wird wahrscheinlich alles fuer die Katz sein, denn wenn der Kollege sich nicht mehr fuer die Wartung interessiert, und du kein Python kannst, dann wird das garantiert nicht mehr gehen, so oft wie Facebook an seiner Seite schraubt.
Vielen Dank, würde dies trotzdem ausprobieren. Alternativ würde Er dies bestimmt aktualisieren, wenn vll. auch gegen einen kleinen Groschen für die Kaffeetasse. Würde dies erstmal so gerne testen.

Irgendwie scheint da nicht was zu stimmen:
Folgendes wurde eingegeben:

Code: Alles auswählen

C:\Users\name>C:\Users\Name\Desktop\Finder-Tool mpip install -r requirements.txt
Siehe auch Screenshot bzw. Link https://ibb.co/L9TNgRG

Irgendwie werden hier trotz des [IMG] Codes keine Bilder angezeigt :?:
Benutzeravatar
sparrow
User
Beiträge: 4195
Registriert: Freitag 17. April 2009, 10:28

Vertipper:

Code: Alles auswählen

<pfad-zum-python-interpreter> -m pip install -r requirements.txt
Der Python-Interpreter ist die python.exe
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

sparrow hat geschrieben: Dienstag 6. Februar 2024, 18:54 Vertipper:

Code: Alles auswählen

<pfad-zum-python-interpreter> -m pip install -r requirements.txt
Der Python-Interpreter ist die python.exe
Sorry, das hätte ich eventuell noch erwähnen müssen, die Datei von der requirements.txt befindet sich auf dem Desktop.
Also C:\Users\Name\Desktop\Finder-Tool.

Irgendwie muss ich den Pfad zu der .txt Datei ja angeben :?:

Update:

Wenn ich den Befehl verwende:
C:\Users\Name>pip install -r C:\Users\Name\Desktop\Finder-Tool requirements.txt
Erhalte ich folgende Fehlermeldung:
ERROR: Could not open requirements file: [Errno 13] Permission denied: 'C:\\User
s\\Name\\Desktop\\Finder-Tool'
Benutzeravatar
sparrow
User
Beiträge: 4195
Registriert: Freitag 17. April 2009, 10:28

Jetzt treffen hier ein paar Dinge aufeinander.
Eigentlich helfen wir hier bei Python-Problemen. Aber hier scheint es ja ein grundsätzliches Problem mit dem Verständnis vom Betriebssystem zu geben.
Man muss den Pfad zu der requirements.txt angeben. Und das ist `Pfad\zu\der\Datei` und nicht `Pfad\zu\der Datei`.
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

sparrow hat geschrieben: Dienstag 6. Februar 2024, 19:37 Jetzt treffen hier ein paar Dinge aufeinander.
Eigentlich helfen wir hier bei Python-Problemen. Aber hier scheint es ja ein grundsätzliches Problem mit dem Verständnis vom Betriebssystem zu geben.
Man muss den Pfad zu der requirements.txt angeben. Und das ist `Pfad\zu\der\Datei` und nicht `Pfad\zu\der Datei`.
Sorry :oops: irgendwie komme ich da jetzt nicht mehr genau mit.

Den Pfad habe ich doch angegeben zu der requirements.txt.

Es funktioniert ja soweit, nur bekomme ich jetzt diese Meldung:
ERROR: Could not open requirements file: [Errno 13] Permission denied:
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Weil du ein Verzeichnis angibst. Nicht die Datei. Das muss EIN Pfad sein. Nicht ein Verzeichnis und dahinter einen einzelnen namen klatschen. Schau nochmal genau an, was sparrow schrieb. Leerzeichen inklusive. Das macht auch die Fehlermeldung klar, da fehlt ja das requirements.txt, weil es eben nicht Teil des Argumentes ist, sondern alleine steht. Und das ist falsch.
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

__deets__ hat geschrieben: Dienstag 6. Februar 2024, 21:10 Weil du ein Verzeichnis angibst. Nicht die Datei. Das muss EIN Pfad sein. Nicht ein Verzeichnis und dahinter einen einzelnen namen klatschen. Schau nochmal genau an, was sparrow schrieb. Leerzeichen inklusive. Das macht auch die Fehlermeldung klar, da fehlt ja das requirements.txt, weil es eben nicht Teil des Argumentes ist, sondern alleine steht. Und das ist falsch.
Sehr vielen Danke für die Hilfe :D Jetzt, habe ich es auch kapiert :oops: tut mir leid für die Umstände.
>pip install -r C:\Users\Name\Desktop\Finder-Tool\requirements.txt

Allerdings kommt jetzt nochmal eine rote Fehlermeldung:
ERROR: requests 2.21.0 has requirement urllib3<1.25,>=1.21.1, but you'll have ur
llib3 2.2.0 which is incompatible.


Weiter unten steht dann aber dran:
Successfully installed certifi-2018.11.29..... urllib3-2.2.0

Offenbar, verstehe ich das so:
Das 2.21 urllib3 empfohlen bzw. notwendig ist, ich aber urllib3 2.2.0 habe.
Müsste dann upgraden auf 2.21, verstehe ich das richtig und wie funktioniert das aber genau?
Benutzeravatar
__blackjack__
User
Beiträge: 13117
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@theSnake: Steht denn beim „Successfully installed“ auch `requests` dabei? Denn *das* hat ja ein Problem mit der zu hohen Version von `urllib3`. Anscheinend wurde die `urllib3` vorher installiert und da steht in der `requirements.txt` nur eine Untergrenze für die Version.

Ich würde `urllib3` explizit in Version <1.25 noch mal installieren.

An der Stelle wäre schon ein venv praktisch gewesen. Das hätte man einfach wegwerfen können und dann die `urllib3` aus der `requirements.txt` nehmen können und es noch mal in ein neues venv installieren können.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

__blackjack__ hat geschrieben: Dienstag 6. Februar 2024, 21:38 @theSnake: Steht denn beim „Successfully installed“ auch `requests` dabei? Denn *das* hat ja ein Problem mit der zu hohen Version von `urllib3`. Anscheinend wurde die `urllib3` vorher installiert und da steht in der `requirements.txt` nur eine Untergrenze für die Version.

Ich würde `urllib3` explizit in Version <1.25 noch mal installieren.

An der Stelle wäre schon ein venv praktisch gewesen. Das hätte man einfach wegwerfen können und dann die `urllib3` aus der `requirements.txt` nehmen können und es noch mal in ein neues venv installieren können.
In der Tat, das stand dabei.

Habe das ganze jetzt auch noch bis zum Abschluss hinbekommen :D

Allerdings erscheint beim Abschluss folgendes:
https://ibb.co/5smjDTt

Kannst du mir bitte sagen, hat das was mit dem urllib zu tun oder ist da einfach das Tool/Script EOD sozusagen?
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Klingt nach einem versionskonflikt. Ich würde alle Pakete oder mindestens urllib deinstallieren, und dann urllib explizit in der benötigten Version einzeln via pip, bevor es wieder mit der requirements weitergeht.
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

__deets__ hat geschrieben: Dienstag 6. Februar 2024, 22:45 Klingt nach einem versionskonflikt. Ich würde alle Pakete oder mindestens urllib deinstallieren, und dann urllib explizit in der benötigten Version einzeln via pip, bevor es wieder mit der requirements weitergeht.
Das heißt für mich wieder, in der requirements.txt den Eintrag auf urllib3>=1.25 umändern oder wie installiere ich die urlibb Version einzeln oder allgemein wie geht so eine deinstallation vonstatten?

Laut der Befehls so?

Code: Alles auswählen

pip install urllib3==1.25
Benutzeravatar
sparrow
User
Beiträge: 4195
Registriert: Freitag 17. April 2009, 10:28

Ich schlage einen Hauch von Eigeninitiative und somit einen Blick in die Dokumentation von pip vor.

Preventiv, falls das die nächste Frage ist: Mit einer Suchmaschine deiner Wahl.
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

sparrow hat geschrieben: Mittwoch 7. Februar 2024, 05:59 Ich schlage einen Hauch von Eigeninitiative und somit einen Blick in die Dokumentation von pip vor.

Preventiv, falls das die nächste Frage ist: Mit einer Suchmaschine deiner Wahl.
Genau, das ist nicht verkehrt und man lernt ja etwas dazu :wink: , das habe ich soweit lösen können , indem ich einfach die Version urllib3>=1.21.1,<1.25 angewendet habe :) . Hat soweit dann auch funktioniert und das Tool hat mit dem Ausführen des Befehls begonnen.

Jedoch benötige ich bei der nächsten Meldung wohl deine fachliche kompetente Hilfe, es gibt jetzt nämlich noch ein weiteres Problem bzw. folgende Meldung, bei dem Schritt:
[ Verifying data ]
[-] Cannot open profile page. Error message: list index out of range. Are you su
re user ID is correct? Please check and start again.


Die User-ID stimmt, da bin ich mir eigentlich zu 100 % sicher, da ich diese ID auch auch manuell geprüft habe aus der Seitenquelle bzw. den Quellcode , diese ID stimmt überein. Habe auch schon 2x den Vorgang wiederholt, aber immer mit der gleichen Meldung.

Kannst du dir da einen Reim drauf machen, wie man das Problemchen beheben kann?
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ja, da sind wir jetzt eben genau da, worauf ich schon vor x Beiträgen hingewiesen habe: das ist kein Tool, das lange hält. Scraping Tools müssen permanent auf Stand gehalten werden. Alleine schon, weil der Betreiber es nicht *will*, das es geht, und entsprechende Gegenmaßnahmen einleitet. Dabei kann dir also hier niemand mal so eben helfen.
Benutzeravatar
theSnake
User
Beiträge: 15
Registriert: Sonntag 8. Mai 2016, 10:05

__deets__ hat geschrieben: Mittwoch 7. Februar 2024, 11:02 Ja, da sind wir jetzt eben genau da, worauf ich schon vor x Beiträgen hingewiesen habe: das ist kein Tool, das lange hält. Scraping Tools müssen permanent auf Stand gehalten werden. Alleine schon, weil der Betreiber es nicht *will*, das es geht, und entsprechende Gegenmaßnahmen einleitet. Dabei kann dir also hier niemand mal so eben helfen.
In der Tat :) , ich wollte es halt trotzdem einfach mal testen, somit konnte ich mich auch ein wenig mit Python auseinandersetzen.

Aber wüsstest du oder eventuell ein anderes Mitglied, wo ich eine "Person/Dev" finden oder beauftragen könnte, der das Tool etwas auf Vordermann bringt :?:
Würde ja sagen, wenn es erlaubt ist und wenn es hier jemand gebe, der sich bereit erklären würde :oops: , sich mit diesem Code zu beschäftigen , könnte man ja dies entsprechend auch honorieren. Aber glaube nicht, das hier in dem Forum dazu so eine Kategorie / Thread gibt, wo man auch Aufträge erteilen kann :cry: . Lasse mal das PN-Postfach offen :geek: .

Ansonsten, kann man das Thema dann eigentlich schließen.
Bedanke mich noch an allen Beteiligten für die Mühe, die tatkräftige Hilfe und für die eine oder anderen nervenaufreibende Zeit :wink:
Antworten