PIL: DLL load failed: specified procedure could not be found

I've been beginning to work with images in Python and I wanted to start using PIL (Pillow). To install it, I ran pip install Pillow. When installing, PIL was not previously installed. I also tried uninstalling it and reinstalling it, as well as using pip3 install Pillow.

When I run it in Python, my first line is:

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.

I checked the directory, and the file _imaging.cp36-win_amd64.pyd is present under the PIL folder.

Why is this happening if the needed DLL is there? How can I fix it?


I had this problem as well with Python 3.6. I just avoided the problem by uninstalling pillow (4.1.0) and then installing an older version of pillow (4.0.0). It seems to run okay with the older version.


As in Sean's answer, I had to uninstall (I'm using Anaconda Python 3.6, BTW) with

conda uninstall pillow

I tried it with PIL, but there was no such package. Uninstalling pillow also meant uninstalling packages that depend on it, in my case "anaconda-navigator" and "scikit-image". After I reinstalled Pillow 4.0.0 with

 conda install pillow=4.0.0

and tested it with

python -c "from PIL import Image"

which, if successful, you don't see an error message, I reinstalled the packages that were uninstalled along with Pillow 4.1.0.

conda install anaconda-navigator
conda install scikit-image