PyQt QtWebengineWidgets с PyQt 5.12 - PullRequest
       56

PyQt QtWebengineWidgets с PyQt 5.12

1 голос
/ 23 апреля 2019

У меня возникли проблемы с QtWebengine и PyQt5.12.

моя история с самого начала:

  • Создайте программу и используйте PyQt для графического интерфейса пользователя
  • используйте cx_freeze, чтобы сделать его более доступным для моих коллег
  • понимаю проблему с моей текущей версией PyQt5.12 соответственно QtWebenginewidgets (для краткости WEW)
  • выясните, что PyQt5.12 больше не включает WEW -> хорошо, нет проблем, просто установите их через pip
  • понимаю, что это все еще не работает.
  • обратный инжиниринг через PyQt 5.11.3 (WEW все еще включен) -> нет проблем с скомпилированной программой.

Мой актуальный вопрос сейчас, почему он не работает с PyQt / PyQt QtWebengineWidgets 5.12?

Я получил 64-битный Python (platform.architecture()[0] возвращает так), а pip list возвращает текущие версии:

  • cx-Freeze 6.0b1
  • PyQt5 5.12.1
  • PyQtWebEngine 5.12.1

Мой код также включает

from PyQt5.QtWebEngineWidgets import QWebEngineView

Это не трагично, так как запасной вариант с PyQt 5.11.3 работает, но в будущем я просто хочу узнать настоящую корневую причину такого поведения. прошу вашего участия.

PS: Windows10 с anaconda 5.0.2 с модулями поддержки up2date с поддержкой пипов.

EDIT: Я только что понял, что забыл одну вещь, я должен был также делать с PyQt5.11.3: скопировать всю папку PyQt5 из каталога Site-packages в Anaconda в папку lib в папке сборки cx_freeze. похоже, там что-то не импортировано. может быть, у меня будет время изучить это и поделиться своими знаниями здесь.

1 Ответ

1 голос
/ 24 июня 2019

начиная с версии 5.12, QtWebEngineWidgets был перемещен в другой пакет, называемый PyQtWebEngine. это должно быть установлено отдельно. Вы можете взглянуть на https://www.riverbankcomputing.com/software/pyqtwebengine/intro

...