web-dev-qa-db-ja.com

PIL:DLL load failed:指定されたプロシージャが見つかりませんでした

私はPythonの画像を使い始めており、PIL(Pillow)の使用を開始したいと考えていました。それをインストールするには、pip install Pillowを実行しました。インストール時に、PILは以前にインストールされていませんでした。また、pip3 install Pillowを使用するだけでなく、アンインストールして再インストールすることも試みました。

Pythonで実行する場合、最初の行は次のとおりです。

File "C:\Program Files\Python36\lib\site-packages\PIL\Image.py", line 56, in <module>
from . import _imaging as core
ImportError: DLL load failed: The specified procedure could not be found.

ディレクトリを確認しましたが、PILフォルダーの下に_imaging.cp36-win_AMD64.pydファイルがあります。

必要なDLLが存在する場合、なぜこれが起こるのですか?どうすれば修正できますか?

32
MLavrentyev

Python 3.6でもこの問題が発生しました。 Pillow(4.1.0)をアンインストールしてから、古いバージョンのPillow(4.0.0)をインストールすることで問題を回避しました。古いバージョンでも問題なく動作するようです。

40
Sean

ショーンの答えのように、私はアンインストールする必要がありました(Anaconda Python 3.6、BTWを使用しています)

conda uninstall pillow

PILで試しましたが、そのようなパッケージはありませんでした。 Pillowをアンインストールすると、それに依存するパッケージ(私の場合は「anaconda-navigator」と「scikit-image」)をアンインストールすることも意味します。 Pillow 4.0.0を再インストールした後

 conda install pillow=4.0.0

そしてそれをテストしました

python -c "from PIL import Image"

成功した場合、エラーメッセージは表示されません。Pillow4.1.0と共にアンインストールされたパッケージを再インストールしました。

conda install anaconda-navigator
conda install scikit-image
23
Ed Bernal

Anacondaを使用している場合は、試してください

conda uninstall pillow、次にpip install pillow

Windows 10(Anaconda 4.5)でCaffe2の作業中にこの問題に遭遇しましたが、これは私にとってはうまくいきました。この問題に関する github post を次に示します。

5
rakidedigama

この問題は、 このGitHubの説明 に従ってPythonを3.6.1にアップグレードすることでも修正されます。

違いは、Pillow 4.1.0はPython 3.6.1で構築され、Pillow 4.0.0はPython 3.6.0で構築されたことです。

どうやらPython 3.6.0のPYTHON36.DLLには、Python 3.6.1でビルドするときに使用される関数(PySlice_AdjustIndicesおよびPySlice_Unpack)がありません。

解決策は、Python 3.6.1にアップグレードすることです。

4

Python自体に問題があります。つまり、Python 3.6.1(Pillow 4.1.0など)を使用してバイナリホイールをビルドすると、Python 3.6.0にインストールされません。 。

これは多くのPythonライブラリに影響を及ぼしました。

ただし、この問題を解決する新しいPillow 4.1.1リリースがあるため、Pillow 4.1.1に更新して、Python 3.6.0および3.6.1の両方で使用できます。

詳細:

2
Hugo

私はanaconda 5.0.1で同じ問題を抱えていましたが、Windows 10のcaffeでそれを使用していました

conda install PIL

それは私のために働いた。

1
Khan

テンソルフロー1.12.0 + Python 3.6.0 + win10に何らかの問題があるようです

Condaテンソルフローで正常に動作しています。

以下の手順は、pip tensorflowで機能しました。

tensorflowをアンインストールし、pythonバージョンを3.6.1に置き換えて、tensorflow(1.13.0)の最新バージョンをインストールします。

Tensorflowをインストールするには、以下のリンクに従ってください: https://www.tensorflow.org/install/pip

0
Rohit Gupta

これはwin10とpy 3.6を使用して動作します。 Pillow 4.1.0 pip3を単にアンインストールしてPillowをアンインストールしてからPillow 4.0.0をインストールしてくださいpip3 install Pillow == 4.0.0

0
dsixnine