ImportError: aucun module nommé 'PyQt5.QtWebEngineWidgets'

11

J'essaie d'exécuter un script python en utilisant PyQt5 QtWebEngineWidgets mais cela génère des erreurs:

  from PyQt5.QtWebEngineWidgets import (
ImportError: No module named 'PyQt5.QtWebEngineWidgets'

Je pense qu'il manque un paquet mais lequel? python3-pyqt5.qtwebkitest installé.

Comment faire fonctionner ça?

Michael
la source

Réponses:

5

Je ne suis pas sûr à 100% que cela réponde au message d'erreur de l'OP, mais au moins pour Ubuntu 17.04, j'ai réussi à exécuter:

apt-get install python3-pyqt5.qtwebengine

Cela apporte des charges de dépendances, y compris libqt5webenginecore5, libqt5webenginewidgets5, python3-pyqt5.qtwebchannelet python3-pyqt5.qtwebengine.

Je ne sais pas comment cela se rapporte à la réponse du compilateur @The QtWebEngine qui n'est pas empaqueté pour Ubuntu, mais cela a fonctionné pour moi sans aucune compilation de Qt / PyQt.

JonBrave
la source
Cela a résolu mon problème d'utilisation de la carte flash Anki sur Debian
zhazha
J'ai marqué 16.04 donc ce n'est pas exactement la réponse mais bon à savoir, il est disponible dans la version actuelle de LTS (18.04 l'a aussi).
Michael
4

Le script a besoin de QtWebEngine, pas de QtWebKit.

Malheureusement, ce n'est pas empaqueté pour Debian / Ubuntu , donc la seule façon d'obtenir ce fonctionnement est de compiler Qt et PyQt par vous-même (ce qui peut être un peu pénible).

Le compilateur
la source
Je le pense aussi ... :(
Michael
Et pour Windows?
Jonathan
4

j'ai installé python3-pyqt5.qtmultimedia

sudo apt install python3-pyqt5.qtmultimedia

à Xenial (car python3-pyqt5.qtwebengineintrouvable, j'ai donc cherché tous les modèles correspondants python3-pyqt5et apt-cache searchtrouvé celui-ci parmi d'autres qui me semblait pertinent.

Je peux maintenant réutiliser ffmpegconverter! (Un petit qui fait de grandes choses, que j'ai compilé à la main).

user292507
la source
Mais qu'est-ce que cela a à voir avec ma question?
Michael
3

Si vous arrivez ici et utilisez pip - je n'ai pas enquêté complètement, mais je viens juste de le faire lors de l'exécution d'Anki depuis la mise à niveau de pip vers PyQT5 5.12. Les tailles de package pour 5.11.3 et 5.12 sont très différentes - 5.11.3 pèse 118 Mo et 5.12 à «seulement» 61 Mo. Forcer l'installation de 5.11.3 a résolu le problème. Je suppose que ce n'est plus inclus dans le PyQT5 dans pip, et doit être installé comme une exigence distincte.

C'est dans les notes de version , ils ont déplacé les widgets du moteur Web vers un autre package. Exécutez simplement:

pip install PyQtWebEngine
mlaventure
la source
3

J'ai eu le même problème lorsque j'ai essayé d'exécuter Spyder pour la première fois. J'utilise une distribution Miniconda sur Mac. J'ai dû installer les deux pour pouvoir déjeuner Spyder

pip install PyQtWebEngine
pip install PyQt5

J'espère que cette aide.

Kareem Jeiroudi
la source
2

Si vous arrivez ici et utilisez pip - je n'ai pas enquêté complètement, mais je viens juste de le faire lors de l'exécution d'Anki depuis la mise à niveau de pip vers PyQT5 5.12. Les tailles de package pour 5.11.3 et 5.12 sont très différentes - 5.11.3 pèse 118 Mo et 5.12 à «seulement» 61 Mo. Forcer l'installation de 5.11.3 a résolu le problème. Je suppose que ce n'est plus inclus dans le PyQT5 dans pip, et doit être installé comme une exigence distincte.

pip uninstall PyQt5
pip install PyQt5==5.11.3

(Le fichier requirements.txt d'Anki a maintenant été mis à jour, donc tirer la dernière version de Github devrait maintenant fonctionner)

AntonOfTheWoods
la source
Pouvez-vous développer votre réponse et afficher les commandes nécessaires pour ce faire?
Kristopher Ives
Fait, désolé, il a fallu si longtemps
AntonOfTheWoods
0

Si vous utilisez Windows 10 exécutant la version 64 bits de Python 3.8.0, j'ai trouvé que cela fonctionnait:

pip uninstall PyQt5
pip uninstall PyQtWebEngine
pip install PyQt5==5.13
pip install PyQtWebEgine

Maintenant, votre code ne se plaindra pas d'une erreur d'importation QtWebEngineWidgets.

EnjoysMath
la source