Это проблема, которая у меня уже была, и, проанализировав, я обнаружил, что QApplication уничтожается до того, как QWebEnginePage вызывает удаление QWebEngineProfile, и в этом случае вызывает сбой QWebEnginePage.Решение состоит в том, чтобы сделать приложение более широким, сделав его глобальной переменной.
С другой стороны, вам нужно вызвать exec_ (), чтобы Eventloop, который позволяет работать с сигналами
# ...
app = None
def get_soup(urls):
global app
app = QtWidgets.QApplication(sys.argv)
webpage = WebPage()
webpage.start(urls)
app.exec_()
return webpage.soup
# ...
Примечание: Похоже, что QTBUG-75547 , связанный с этой проблемой, был решен для Qt5> = 5.12.4, поэтому, вероятно, в следующем выпуске PyQtWebEngine эта ошибка больше не будет наблюдаться.