it-roy-ru.com

Python не находит библиотеки MagickWand (несмотря на правильное местоположение?)

Я хотел установить палочку API Python ImageMagick и подписался на этот сайт:

http://docs.wand-py.org/en/latest/guide/install.html#install-imagemagick-on-windows

Однако при запуске очень простого теста:

from wand.image import Image

Я получаю следующий вывод:

Traceback (последний вызов был последним):

Файл "F:\PATHTO\Python34\lib\site-packages\wand\api.py", строка 137, в library = load_library ()

Файл "F:\PATHTO\Python34\lib\site-packages\wand\api.py", строка 107, в файле load_library повысить IOError ('не может найти библиотеку; пробные пути:' + repr (try_paths))

Ошибка: не удается найти библиотеку; пробные пути: ['F:\PATHTO\ImageMagick-6.8.9-Q16\CORE_RL_wand_.dll', 'F:\PATHTO\ImageMagick-6.8.9-Q16\CORE_RL_wand_HDRI.dll', 'F:\PATHTO\ImageMagick- 6.8.9-Q16\CORE_RL_wand_-Q16.dll ',' F:\PATHTO\ImageMagick-6.8.9-Q16\CORE_RL_wand_-Q16HDRI.dll ',' F:\PATHTO\ImageMagick-6.8.9-Q16\CORE_RL_wand_- Q8.dll ',' F:\PATHTO\ImageMagick-6.8.9-Q16\CORE_RL_wand_-Q8HDRI.dll ',' F:\PATHTO\ImageMagick-6.8.9-Q16\CORE_RL_wand_-6.Q16.dll ',' F:\PATHTO\ImageMagick-6.8.9-Q16\CORE_RL_wand_-6.Q16HDRI.dll ']

Во время обработки вышеупомянутого исключения произошло другое исключение:

Traceback (последний вызов был последним): файл "D:\PATHTO\Python\test.py", строка 1, в файле импорта wand.image

Файл "F:\PATHTO\Python34\lib\site-packages\wand\image.py", строка 20, из .api import MagickPixelPacket, libc, libmagick, library

Файл "F:\PATHTO\Python34\lib\site-packages\wand\api.py", строка 161, в разделе "Попробуйте установить:\n '+ msg)

ImportError: общая библиотека MagickWand не найдена. Вы, вероятно, не установили библиотеку ImageMagick. Попробуйте установить: http://docs.wand-py.org/en/latest/guide/install.html#install-imagemagick-on-windows

Дело в том, что файлы, которые пытались найти (например, CORE_RL_wand_.dll), находятся в том самом месте, в котором они не были найдены. Поэтому, похоже, я установил MAGICK_HOME env. переменная правильно.

Однако (что, по-видимому, отображается неправильно) пути к интерфейсу wand api и моей установке Python отображаются с одной обратной косой чертой в моей командной строке, а пути к папке ImageMagick отображаются с двумя из них.

Я не понимаю, почему это так (переменная env. Использует одинарные обратные косые черты, как на связанном сайте), и я не знаю, является ли это проблемой или даже связано с ней.

10
userrr3

Я решил свою проблему после ДУМАЮ об этом;)

У меня была 32-битная версия Python и ​​64-битная версия ImageMagick ... после удаления ImageMagick и установки 32-битной версии все в порядке.

Может быть, это помогает кому-то, кто сталкивается с той же проблемой и приходит сюда через Google ^^

19
userrr3

Была похожая проблема, проверил, что установлена ​​правильная архитектура, соответствующая python 3.x, и она все еще не работает. Мне удалось заставить его работать, выполнив несколько шагов, и я решил опубликовать его здесь в обобщенном виде на случай, если у кого-то возникнут аналогичные проблемы.

Несколько источников сказали, что Image Magick 7.x не совместим с волшебной палочкой, поэтому убедитесь, что вы используете 6.x. Кроме того, "статические" версии суффиксов не работают. Тот, который, наконец, работал для меня, был "ImageMagick-6.9.8-10-Q8-x64-dll.exe"

5
gravity84

Я столкнулся с подобной проблемой, однако установка ImageMagick-6.9.xx-Q16-x64-dll.exe хитрость ... так что совершенно очевидно, что ImageMagick-6.9.10-11-Q16-x64-static.exe не кажется быть готовым ..... Архитектура для Python & Установщик был только 64-разрядным .....

Удалить ImageMagick-6.9.10-11-Q16-x64-static.exe, затем установить ImageMagick-6.9.x-x-Q16-x64-dll.exe

1
Abhishek Jain

Просто обратите внимание, это работает и другим способом (в моем случае), я получил ту же ошибку с 64-битным python и ​​32-битным Imagemagick. Архитектура python (32- или 64-разрядная) должна соответствовать архитектуре ImageMagick. Однако обратите внимание, что ghostscript может быть 32-разрядным и все еще работать.

0
user61629