Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erklärung eines einfachen Tutorials für die PIL-Installation in Python

Ausführliche Erklärung eines einfachen Tutorials für die PIL-Installation in Python

高洛峰
高洛峰Original
2017-03-10 13:51:091803Durchsuche

In diesem Artikel wird hauptsächlich das einfache Tutorial zur PIL-Installation in Python erläutert.

Die PIL-Installation in Python ist eine sehr mühsame Sache, auch wenn Ein Grafikprogramm speichert einfach ein Bild aus einem Binärstream (z. B. mit Scrapy zum Crawlen und Speichern von Bildern), es verwendet die PIL
-Bibliothek, und diese Bibliothek ist bekanntermaßen schwierig zu installieren.

Ja Die Leistung besteht darin, dass bei Verwendung von Scrapys ImagePipeline standardmäßig PIL verwendet wird. Wenn der Grafikdecoder nicht korrekt installiert ist, treten die folgenden Fehler auf:

IOError: decoder jpeg not available
Ich habe im Internet nach vielen Methoden gesucht, aber sie funktionieren immer noch nicht und ich weiß nicht, was los ist. Ich dachte zunächst, es gäbe ein Problem mit der Installation des PIL Bibliothek, aber selbst wenn PIL korrekt installiert ist, tritt der obige Fehler immer noch auf.

Später habe ich ein Paket namens Imaging-1.1.7 gefunden, es zufällig installiert und danach ignoriert Es hat funktioniert. Technische Schulden müssen immer zurückgezahlt werden, aber ich habe nicht so schnell darüber nachgedacht, dass ich kurz vor der Veröffentlichung des Projekts auf das gleiche Problem gestoßen bin. Ich habe dieses Paket direkt verwendet, aber das Ergebnis war ... .

Die Antwort ist natürlich schmerzhaft, es ist immer noch IOError ~

Okay, lass die schmerzhaften Dinge los, ich habe endlich einen Hoffnungsschimmer gefunden zu den folgenden Tabelleninformationen:

--------------------------------------------------------------------
PIL 1.1.7 SETUP SUMMARY
--------------------------------------------------------------------
version    1.1.7
platform   linux2 2.7.6 (default, Jun 22 2015, 17:58:13)
       [GCC 4.8.2]
--------------------------------------------------------------------
*** TKINTER support not available
*** JPEG support not available
*** ZLIB (PNG/ZIP) support not available
*** FREETYPE2 support not available
*** LITTLECMS support not available
--------------------------------------------------------------------

Hinweis: Diese Tabelle wird nach Verwendung des Python-Setups angezeigt .py Build-Befehl im Imaging-Installationsverzeichnis.

Wenn Sie sehen, dass Sie detaillierter sein müssen, werden Sie es herausfinden, richtig! Das Problem liegt nicht bei PIL, sondern bei Decoder. Der Grund, warum ich es erfolgreich unter OSX installieren konnte, muss darin liegen, dass ich diese Decoder zuvor installiert habe.

Um zu verhindern, dass andere Freunde erneut in diese Grube fallen, wurde die Installationsmethode speziell aussortiert :

Mac OSX
brew updatebrew install libjpeg libpng

Es reicht aus, diese beiden zu installieren

Ubuntu 14.0.4
sudo apt-get install libjpeg-dev libpng12 -dev libfreetype6-dev libtiff-dev
Unter Linux ist es etwas schlimmer, man muss es installieren ein paar weitere Pakete.

Das reicht nicht aus, es ist am besten, einfach das Pillow-Python-Paket zu verwenden, anstatt es manuell herunterzuladen. Verwenden Sie einfach den folgenden Befehl

pip install -. I --no-cache-dir -v Pillow

Nachdem dieser Befehl ausgeführt wurde, werden viele Informationen angezeigt. Machen Sie sich keine Sorgen, finden Sie sie einfach. Folgendes reicht aus:

--------------------------------------------------------------------
PIL SETUP SUMMARY
--------------------------------------------------------------------
version   Pillow 3.2.0
platform   linux2 2.7.6 (default, Jun 22 2015, 17:58:13)
       [GCC 4.8.2]
--------------------------------------------------------------------
*** TKINTER support not available
--- JPEG support available
*** OPENJPEG (JPEG2000) support not available
--- ZLIB (PNG/ZIP) support available
*** LIBTIFF support not available
--- FREETYPE2 support available
*** LITTLECMS2 support not available
*** WEBP support not available
*** WEBPMUX support not available
--------------------------------------------------------------------
To add a missing option, make sure you have the required
library, and set the corresponding ROOT variable in the
setup.py script.

To check the build, run the selftest.py script.

Das reicht! Bitte beachten Sie die Zeile oben,

Um den Build zu überprüfen, führen Sie das Skript selftest.py aus Diesesselftest.py ist eine gute Sache. Zumindest kann man wissen, ob es erfolgreich ist oder nicht.

Ich wünsche allen eine erfolgreiche Installation!

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung eines einfachen Tutorials für die PIL-Installation in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn