it-swarm.com.de

Lxml, libxml2, libxslt unter Windows 8.1 installieren

Nach weiteren Untersuchungen fand ich eine Lösung für die Installation von lxml mit pip und wheel. Zusätzliche Anmerkungen zum Ansatz werden begrüßt.

Ich finde die vorhandene Python-Dokumentation für Linux-Distributionen hervorragend. Für Windows ... nicht so sehr. Ich habe mein Linux-System gut konfiguriert, brauche aber etwas Hilfe, um ein Windows 8.1-Tablet vorzubereiten.

Mein Projekt erfordert das Lxml-Modul für Python 3.4. Ich habe viele Tutorials zur Installation von lxml gefunden, aber jedes ist fehlgeschlagen.

https://docs.python.org/3/installing/ Ich habe "get-pip.py" heruntergeladen und es erfolgreich aus der Windows-Cmd-Zeile ausgeführt, mit dem Ergebnis:

Requirement already up-to-date: pip in c:\python34\lib\site-packages

Ich glaube nicht, dass ich ein "Pip" -Problem habe. Von dort aus habe ich folgendes aus der Windows-cmd-Zeile ausgeführt:

python -m pip install lxml

Eine lange Liste von Befehlen blättert durch, aber es gibt einige Zeilen, bei denen es sich scheinbar um Fehler handelt, die ich nicht beheben kann.

  ERROR: b"'xslt-config' is not recognized as an internal or external command,\r\noperable program or batch file.\r\n"
  ** make sure the development packages of libxml2 and libxslt are installed **

und

Failed building wheel for lxml

Und der letzte Teil, alles in rot

Command "C:\Python34\python.exe -c "import setuptools, tokenize;__file__='C:\\Users\\Owner\\AppData\\Local\\Temp\\pip-build-ya3n6wkd\\lxml\\setup.py';exec(compi
le(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record C:\Users\Owner\AppData\Local\Temp\pip-ytybzl9l-r
ecord\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\Owner\AppData\Local\Temp\pip-build-ya3n6wkd\lxml

Jede Hilfe, um zu verstehen, wie dies funktionieren soll oder was ich falsch mache, wäre sehr dankbar.

23
SigmaXD

Ich konnte die Installation mit den folgenden Schritten beheben. Ich hoffe, andere finden das hilfreich.

Meine Installation von "pip" hat vor dem Problem gut funktioniert. Ich ging zur Windows-Befehlszeile und stellte sicher, dass "Rad" installiert war.

C:\Python34>python -m pip install wheel
Requirement already satisfied (use --upgrade to upgrade): wheel in c:\python34\lib\site-packages

Danach lud ich die lxml-Datei von http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml herunter und legte sie in mein Python-Verzeichnis "C:\Python34".

In diesem Verzeichnis habe ich folgendes ausgeführt:

C:\Python34>python -m pip install lxml-3.4.4-cp34-none-win32.whl

Die Ergebnisse waren:

Processing c:\python34\lxml-3.4.4-cp34-none-win32.whl
Installing collected packages: lxml
Successfully installed lxml-3.4.4

Ich habe PyCharm geöffnet und das Lxml-Modul war verfügbar. Ich konnte den Code ohne Probleme ausführen.

Was ich gelernt habe (obwohl dies möglicherweise von anderen korrigiert wird)

  1. Sie müssen das gewünschte Modul (als "* .whl" -Datei) mit pip und wheel installieren.
  2. Die Verwendung von Dropbox zum Freigeben eines Codeordners für verschiedene PyCharm-Installationen führt zu Verwirrung in der Datei "workspace.xml". Die beiden Computer überschrieben sich ständig und verwirrten die Installationspfade. 

Hoffe das hilft.

59
SigmaXD

Meine Situation war sehr ähnlich. Ich habe Python 3.4 für die Arbeit auf meinem Laptop installiert, und wir haben strikte Sicherheitsvorkehrungen. Ich kann also nicht einfach 3.5 installieren, ohne dass der Systemadministrator dies erfordert.

Also habe ich hier die Python Extension-Site gefunden:

http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml

Die Raddatei für Lxml wurde gezogen, die meinen Angaben entsprach:

lxml-3.6.4-cp34-cp34m-win_AMD64.whl

Und dann einfach getippt:

pip install lxml-3.6.4-cp34-cp34m-win_AMD64.whl

Und es wurde sofort installiert.

5

Dieses Problem scheint ab Lxml Version 4.2.5 behoben zu sein.

Wenn dieser Fehler weiterhin angezeigt wird und Sie eine bestimmte Version von lxml in einer Anforderungsdatei angeben, versuchen Sie, die Anforderungsdatei zu aktualisieren, um Lxml Version 4.2.5 oder höher anzugeben.

Ich hatte diesen Fehler mit Lxml 4.2.1. Es wurde jedoch behoben, als ich die Anforderung in lxml 4.2.5 änderte.

0
Roger Iyengar

Ich habe vor einiger Zeit angefangen, mit lxml zu arbeiten, als einige HTML-Dateien analysiert werden mussten. Ich habe es irgendwie installiert und nach einiger Zeit verlor ich die Installation wegen des PC-Formats. 

Die Installation von lxml unter Windows von den verfügbaren Binärdateien/Rädern ist recht einfach. Der nachstehende Link enthält die Binärdateien/Räder, falls Sie sie benötigen.

http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml

Nachdem Sie die Raddatei unter Windows heruntergeladen haben, können Sie den folgenden Befehl ausgeben pip install <pathtoyourdownloadedwheelfile>

Falls Sie git-sdk-win32 für Windows verwenden, können Sie zunächst libxml2-devel, libxml2-python und libxslt-devel, libxslt-python mit pacman suchen, indem Sie den folgenden Befehl ausgeben.

pacman -Ss libxml2

und 

pacman -Ss libxslt

dann können Sie lxml mit dem folgenden Befehl installieren

pip install lxml Es kann fehlschlagen, das Rad zu bauen (wie bei mir), aber es wird lxml mit dem setup.py installiert.

Ich habe einfach angefangen, dieses git-win32-sdk zu lieben. Es hilft mir, an meinem Windows mit dem, was ich unter Linux gelernt habe, zu arbeiten.

https://github.com/git-for-windows/build-extra/releases

0
stupidnetizen