Ошибка загрузки DLL при импорте PyQt5

Я установил PyQt5 на платформу Windows и потерял загрузку importError: DLL.

Я установил pyqt5 с помощью команды

pip3 install pyqt5
Successfully installed pyqt5-5.8.1

Моя версия Python выглядит следующим образом:

Python 3.5.2 |Anaconda custom (64-bit)| (default, Jul  5 2016, 11:41:13) [MSC v.1900 64 bit (AMD64)] on win32

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

from PyQt5.QtWidgets import QApplication
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: DLL load failed: The specified module could not be found.

Спасибо и с уважением

Ответ 1

Это из-за отсутствия Python3.dll (заглушка dll, которая ретранслирует функции Python3x.dll, так что одна версия расширения может работать для нескольких версий python).

Если ваш дистрибутив Python не связывает python3.dll, вы можете попробовать один из WinPython (https://winpython.github.io/).

По крайней мере, версии 2017/04/01 должны иметь это.

1) Загрузите WinPython (достаточно "нулевой" версии, должна быть такая же "основная версия" - 3.5/3.6 - и "bitness" - 32/64 - как ваш Python!!!).

2) Извлеките в некоторый каталог temp, возьмите файл python3.dll и вставьте его в свой каталог python рядом с python3x.dll.

3) Наслаждайтесь работой QT

Ответ 2

Я знаю, что тема старая, но у меня также была эта проблема с новейшей версией PyQT 5.11, но я понизил ее до 5.9 через:

pip install PyQT5==5.9

и это решило проблему.

Ответ 3

Если вы создали virtualenv, проверьте, была ли скопирована python3.dll в каталог Scripts этого виртуального пользователя. Скорее всего, были скопированы только python35.dll (или python36.dll и т.д., В зависимости от версии Python), и в этом случае вы получите ошибку, которую вы получаете.

Ответ 4

Я нашел альтернативное решение.

Я использовал virtualenv, потому что PyCharm сделал один для меня, и я не знал лучше. Я установил PyQt5 в этом virtualenv.

Я переключился на использование virtualenv и установил PyQt5 в глобальном каталоге Python. Это исправило это.

Ответ 5

В моем случае у меня была 32-битная Windows 10 и Python 3.7.2. Используя PyQt5 5.11, установленный через pip, я получил эту ошибку:

from PyQt5.QtWidgets import QApplication
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: DLL load failed: The specified module could not be found.

Я заметил, что версия 5.11 поставляется без библиотек Qt, поэтому я переустановил более раннюю версию с помощью python -m pip uninstall PyQt5 и python -m pip install PyQt5==5.10

Никогда не используйте --no-cache-dir, так как это приведет к ошибке подтверждения при установке whl файла:

assert building_is_possible
assertion Error

Я закончил установку 5.10 и получил следующую ошибку:

qt.qpa.plugin: Could not load the Qt platform plugin "windows" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

После установки QT_DEBUG_PLUGINS и даже пути к плагину с помощью:

set QT_DEBUG_PLUGINS=
set QT_PLUGIN_PATH=C:\Python37-32\Lib\site-packages\PyQt5\Qt\plugins

Я понял, что dll qwindows.dll был найден в правильном пути, где он находится.

TL; DR: я перезапустил свой скрипт Qt на python с повышением UAC, и думаю, что это сработало !

Ответ 6

В Windows 10 с использованием Python 3.6 я исправил эту ошибку, выполнив следующие шаги:

1) Установите PyQt5 с помощью pip install pyqt5

2) Как поясняется на этом веб-сайте Microsoft, я изменил установку сообщества Visual Studio 2017, разрешая "собственные средства разработки Python",

enter image description here

3) Скопируйте python3.dll из C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64 в C:\IntelPython3\Lib\site-packages\PyQt5 (проверьте свой каталог)

Ответ 7

Вы можете попытаться загрузить 64 - разрядный Python Installer (Windows x86-64 исполняемого инсталлятор) от сюда. Я использую PyQt5==5.10.1. Решите мою проблему.

Ответ 8

Это также может произойти, если у вас установлена версия Anaconda, которая поставляется с PyQt5, и вы перекрываете этот пакет установленной версией в pip. Удаление версии, установленной в pip, исправило проблему для меня.

Ответ 9

Решение

  1. Закрыть все программы и компиляторы
  2. Откройте Anaconda Navigator. Убедитесь, что у вас установлены модули pyqt и qtpy (qtawesome необязательно).
  3. От Anaconda Navigator Home и запуска кода VS, Jupyter ваш любимый редактор
  4. Запустите вашу программу! -

это не постоянное исправление, но оно сработало для меня, надеюсь, оно сработает и для вас @Miloslav Raus ответ не сработал для меня

Ответ 10

Ответ довольно прост иногда. Прошло много головных болей, потому что приложение работало без проблем перед перезагрузкой компьютера. Тем не менее, я просто сказал себе, может быть, Windows просто не может загрузить модуль DLL? Поэтому я снова перезагрузил компьютер и снова запустился.

Работал отлично. Надеюсь, это помогло кому-то.

Ответ 11

Я пробовал все решения здесь и некоторые из них в другом месте, однако любой из них не работал для меня. Решение, которое сработало для меня, - это установить более новую версию Python.