PyQt5 - QWebEngineUrlRequestInterceptor для содержимого ответа сервера - PullRequest
0 голосов
/ 27 мая 2020

Для разработки своего приложения браузера я установил QWebEngineUrlRequestInterceptor, поэтому я могу фильтровать повторно запрашиваемые URL-адреса. Я хотел бы теперь иметь аналогичную вещь, но для содержимого ответа сервера ie теоретический тип QWebEngineServerResponseInterceptor класса. Мне неизвестны какие-либо существующие классы, и я даже не знаю, поддерживает ли QtWebEngine перехват ответов сервера, так как это может go напрямую к Chromium Networking Stack и, следовательно, полностью обойти QtWebEngine. Я хотел бы иметь возможность читать и изменять Javascipt, html, et c ... до его загрузки в QWebEngineView.

Я думал заблокировать все URL-адреса в QWebEngineUrlRequestInterceptor, а затем запрашивать их индивидуально с помощью QNetworkAccessManager, однако я думаю, что это плохая идея, потому что Qt переключился на Chromium Networking Stack по какой-то причине, а также, хотя я мог анализировать ответ с помощью QNetworkReply, я не Я не знаю, как загрузить это в QWebEngineView или как захватить и загрузить POST data в запросы POST.

Есть ли какое-то обходное решение, которое я мог бы использовать, чтобы прочитать и измените содержимое ответа сервера перед его загрузкой в ​​QWebEngineView?

...