Was bedeutet "Befehl" python setup.pygg_info "fehlgeschlagen mit Fehlercode 1"?

7

Ich erhalte immer wieder eine Fehlermeldung, wenn ich versuche, einige grundlegende Python-Bibliotheken wie zu installieren BeautifulSoup. Der Fehler sieht folgendermaßen aus:

Fehler Screenshot

Was genau bedeutet das und wie behebe ich es? Ich habe diese Befehle bereits ausprobiert:

pip install --upgrade
pip install
pip install unroll

Wie in anderen Beiträgen vorgeschlagen, aber das schien auch nicht zu helfen ..

huehuehuehuehuehuehuehuehuehue
quelle
Es sieht so aus, als ob das Installationsskript Python 2.7-Code enthält, da die print-Anweisung keine Klammern enthält.
NeoTheThird
Können Sie es mit dem Parameter -H für sudo versuchen, wie in der Warnmeldung vorgeschlagen?
Albert
Ich dachte, der Parameter -H ändert nur, dass der Befehl sudo nur Dinge im Home-Verzeichnis ändern kann, anstatt von root, weil sonst jemand irgendwo bösartigen Code installieren könnte. Liege ich falsch? Auch immer noch den gleichen Fehler auch mit -H
huehuehuehuehuehuehuehuehuehue
Weiß niemand, wie man das löst? Ich bin relativ neu in Linux und Programmierung und das ist wirklich entmutigend, um ehrlich zu sein. Ich
versage,
Gleiches Problem unter Ubuntu 16.04 mit Python 2.7.12. Dieser Beitrag ( stackoverflow.com/questions/35991403/… ) hat eine Reihe von Antworten, aber keine von ihnen funktioniert
Matifou

Antworten:

1

Der Syntaxfehler Missing parenthesis...zeigt deutlich, dass Sie einen Python3-Interpreter haben, der versucht, Python2-Code auszuführen. Ich weiß nicht, wo Sie die Installationsanweisungen für 'BeautifulSoup' gelesen haben, aber laut Dokumentation haben Sie zwei verschiedene Pakete, eines für Python2 und das andere für Python3.
Sie sind jeweils installiert:

$ apt-get install python-bs4 (for Python 2)

$ apt-get install python3-bs4 (for Python 3)

Es ist auch möglich, pip zu verwenden, aber das empfohlene Paket ist beautifulsoup4. Als Fußnote heißt es: „ Das BeautifulSoup-Paket ist wahrscheinlich nicht das, was Sie wollen. Das ist die vorherige Hauptversion .

Marc Vanhoomissen
quelle
1
Danke für die Antwort! Das ist verwirrend, aber tatsächlich habe ich das Kopfgeld für ein Problem gepostet, von dem ich glaubte, dass es mit dem Paket BeautifulSoup identisch ist, und es ist tatsächlich nicht (über unroll und rpy2), also habe ich einen neuen Beitrag eröffnet: askubuntu.com/questions/975523/… danke!
Matifou
0

Erzwinge die Python2-Version von pip:

sudo pip2 install BeautifulSoup

Möglicherweise haben Sie ein benutzerdefiniertes Setup, auf pipdas möglicherweise verwiesen wird pip3. Wie haben Sie installiert pip? Könnten Sie die Fragenausgabe von überprüfen und ergänzen:

ls -l $(which pip); dpkg -S /usr/bin/pip
user.dz
quelle
Sorry, es ist ein wenig verwirrend, meine Frage bezieht sich eigentlich auf Paket rpy2und unroll, die auch den gleichen Fehlercode erzeugen (während schöne Suppe von Sudo gelöst werden kann). Pip2 führt zu gleichen Fehler mit: pip2 install rpy2==2.2.7: Command „Python setup.py egg_info“ Fehler mit Fehlercode 1 . Ich führe Ihren Code aus: -rwxr-xr-x 1 root root 204 2. Oktober 10:14 / usr / local / bin / pip Python-Pip: / usr / bin / pip . Vielen Dank!
Matifou
@Matifou Aus dieser Ausgabe können Sie ersehen, dass Sie eine weitere Kopie von pip in haben /usr/local/. Versuchen Sie es erneut mit vollem Pfad/usr/bin/pip2 install rpy2
user.dz
Mmh, leider hilft das auch nicht, immer noch die gleiche Fehlermeldung ... Aber in der Tat war ich 2 Pip, mit zwei Versionen: /usr/bin/pip2 --version Pip 8.1.1 von /usr/lib/python2.7/dist-packages (Python 2.7) pip2 --version pip 9.0.1 von /home/matifou/.local/lib/python2.7/site-packages (python 2.7) (und konnte / usr / bin / pip2 nicht automatisch aktualisieren). Vielen Dank!
Matifou
Mein Problem scheint also etwas anders zu sein als das hier. Deshalb habe ich hier einen neuen Beitrag eröffnet: askubuntu.com/questions/975523/… , aber ich bin froh, hier das Kopfgeld zu vergeben, wenn es funktioniert (es scheint nicht möglich zu sein, ein Kopfgeld zu verschieben). ! Vielen Dank!
Matifou
-1

Sie installieren das falsche Paket. BeutifulSoup ist Version 3.2.1 und zurück aus dem Jahr 2012. Sie möchten beautifulsoup4.

Anstatt zu verwenden pip, können Sie auch einfach verwenden apt. Der Paketname lautet python-bs4.

Der orangefarbene Text deutet darauf hin, dass Sie Ihre Installationen durcheinander gebracht haben, indem Sie mit sudound nicht mit sudound möglicherweise mit verwendet haben --user.

Ist Ihre Pip-Version auch aktuell? python -m pip install --upgrade pip

Diffeo
quelle
Hallo. Meine Frage bezog sich tatsächlich auf rpy2 und das Abrollen und dachte, es sei das gleiche Problem, obwohl dies nicht der Fall ist. Also habe ich eine neue gepostet: askubuntu.com/questions/975523/… Aber ich habe dir das Kopfgeld gegeben, da ich denke, du deutest auf das richtige Problem hin, die Python-Installation verwechselt zu haben. Hoffentlich bekommen Sie einen Hinweis, um mein Problem zu lösen? Vielen Dank!
Matifou