1. ホーム
  2. Python

Python27 PILソリューションという名前のモジュールがない

2022-02-12 08:14:08

       PILです。Python Imaging Libraryの略で、Pythonプラットフォームにおける画像処理用のデファクトスタンダードライブラリです。

       しかし、画像処理を行うと、例外として、No module named PIL. 画像処理用のライブラリは存在しない。Python 2.7にはライブラリが付属していないので、自分でロードして操作する必要があるのです。しかし、Web上には様々な情報があり、具体的な説明はありません。時間短縮と誤解を招かないために、完全な解決策を書き出しておきます。

      1. easy_installのインストール

      なぜeasy_installをインストールする必要があるのですか?
     通常、サードパーティ製のPython用拡張パッケージをインストールするには、まずzipパッケージをダウンロードしてディレクトリに展開し、コマンドラインまたはターミナルでそのディレクトリを開き、python setup.py installを実行してインストールする必要があります。これは非常に面倒な作業です。コマンドラインで直接easy_install Twistedを実行すれば、Twistedをパッケージ化できて便利です。そこで、easy_installは、サードパーティーの拡張パッケージを簡単にインストールできるようにするためのものです。

     easy_install ダウンロードパス: https://github.com/ActiveState/ez_setup

     パッケージを解凍し、コマンドラインを開き、python ez_setup.pyを実行します。

     2. pipのインストール

       Pythonパッケージのインストールは、pypiから直接ファイルをダウンロードし、安全で信頼できる状態を維持し、臨機応変に対応できるので、本当に最も便利で簡単で速いです。pipはPythonパッケージをインストールし管理するツールです。

       ダウンロードパス: https://github.com/pypa/pip

        パッケージを解凍し、コマンドラインを開き、python setup.py install を実行します。

     通常はpythonのインストールパスに解凍されているはずですが、私はデモのためにそうしただけです。pipをインストールした後、pythonのインストールパスの下にscriptsフォルダがあり、そこでpipの環境変数を設定する必要がありますが、これはあまりにも簡単なので、ここでは説明しません。

    3. 次に、PILのインストールです

      ダウンロードパス: http://www.lfd.uci.edu/~gohlke/pythonlibs


        PILをインストールする前に、wheelパッケージをインストールする必要があります。基本的にwheelは圧縮されたフォーマットのパッケージです。pythonモジュールのインストールを使用します。

        すでにインストール済みでうまく表示できないので、コマンドラインからpip install wheelを実行します。



        次に、ダウンロードしたPILをインストールします。pip install Pillow-4.1.0-cp27-cp27m-win_amd64.whl を実行します。

       全部インストールした状態なので、あまりうまく表示もできないのですが。PILを正常にインストールすると、SUCCESSFULLYと表示されます。

whlファイルをインストールする方法についてお話します。

D:\Python27Scripts ディレクトリをパスに追加すると、whl ファイルがあるディレクトリで直接 cmd ウィンドウを管理者で開き、以下の文を直接実行することが可能です。
pip install Pillow-4.1.0-cp27-cp27m-win_amd64.whl
(そうでない場合は、D: \Python27Scripts ディレクトリで管理者権限で cmd を開き、pip コマンドを実行する必要があります。)
pip install C:\UsersxxxxxDownloads-Pillow-4.1.0-cp27-cp27m-win_amd64.whl

     4. インストール完了

       この時点で、私たちのPILモジュールは正常にインストールされました。Python 2.7で使用することができるようになります。

       PILを導入する、コードはfrom PIL import Image .

      5. エンディング

       python 2.7とpython 3.0+の違いはほとんどありませんが、どうしても互換性の問題があります。例えば、3.0+は独自のpipを持っていますが、2.7にはありません。だから、操作をしてこなければならない。でも、習慣でpython2.7を使い慣れてるから、ファイルをダウンロードして操作する必要があるわけです。この記事が、まだpython2.7を使っている皆さんのお役に立てれば幸いです。