@agent_2203

Как исправить ошибку при импорте в библиотеке PyQT5?

У меня есть код, в котором импортируются следующие функции с PyQT5:

from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtWebKit import *
from PyQt5.QtWebKitWidgets import *
from PyQt5.QtWebEngine import *
from PyQt5.QtWebEngineWidgets import *
from PyQt5.QtNetwork import *
from PyQt5.QtCore import QUrl
from PyQt5.QtWebEngineWidgets import QWebEngineView
from PyQt5.QtWidgets import QApplication


На моем пк отлично все работает, вот версии библиотек с pip:

PyQt5==5.15.2
PyQt5-sip==12.8.1
PyQtWebEngine==5.15.2


Однако когда я запускаю этот же скрипт на сервере (Ubuntu 20.04), то возникает следующая ошибка:

Traceback (most recent call last):
  File "headless_browser.py", line 6, in <module>
    from PyQt5.QtWebKit import *
ModuleNotFoundError: No module named 'PyQt5.QtWebKit'


Вот все зависимости библиотеки на сервере на сервере с pip3:

PyQt5==5.15.2
PyQt5-Qt5==5.15.2
PyQt5-sip==12.8.1
PyQtWebEngine==5.15.2
PyQtWebEngine-Qt5==5.15.2


Можете подсказать куда нужно рыть? Я не сталкивался с PyQT5 никогда, работал только на selenium. Перечитал много статей, но везде говорится только то, что qt было удалено в версии 5.6, но на сервере и у меня на пк стоит 5.15.2.
Может ли это быть связано с одним из того, что у меня стоит Arch Manjaro Linux на пк и Python 3.9, а на сервере 3.8?
  • Вопрос задан
  • 1379 просмотров
Решения вопроса 1
@agent_2203 Автор вопроса
Странно что об этом нигде практически не написано, но я нашел следующее решение:

apt-get install python3-pyqt5.qtwebengine
apt-get install python3-pyqt5.qtwebkit


Далее если вы используете headless, то указываем, иначе PyQT будет выбивать ошибку:

export QT_QPA_PLATFORM=offscreen
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
phaggi
@phaggi
лужу, паяю, ЭВМы починяю
agent_2203, а вы какую цель преследовали, когда писали этот код? Чтобы ваша программа, скопированная на ubuntu, сама где-то взяла эти библиотеки и запустилась? Так ведь их надо туда, на ubuntu, установить же ж.

Или собрать на своем компе проект, включающий в себя всё для него необходимое (есть много разнообразных программ, типа cx_Freeze, py2exe, nuitka, PyInstaller и др., которые это делают). Это задача нетривиальная, т.к. у большинства популярных сборщиков проектов управление застряло на уровне ini-файлов 1987 года... ну, что есть.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы