Как правильно перенаправить запрос от QWebEngineUrlRequestInfo?
Пишу небольшой плагин для Falkon, задача которого очень проста: перенаправить запросы с youtube.com на Piped.video. Он это делает, но только если в URL-адресе нет ничего, кроме домена (т. е. просто «youtube.com»), и если он есть, страница YouTube появляется с ошибкой подключения к Интернету. Вот код:
import Falkon
from PySide2 import QtCore, QtGui, QtWidgets, QtWebEngineCore
from urllib.parse import urlparse
class YoutubeToPiped(Falkon.PluginInterface, QtCore.QObject):
def init(self, state, settingsPath):
self.interceptor = YoutubeToPipedInterceptor()
Falkon.MainApplication.instance().networkManager().installUrlInterceptor(self.interceptor)
def unload(self):
pass
def testPlugin(self):
return True
class YoutubeToPipedInterceptor(Falkon.UrlInterceptor):
def interceptRequest(self, info: QtWebEngineCore.QWebEngineUrlRequestInfo):
requestUrl = urlparse(info.requestUrl().toString())
if "youtube.com" in requestUrl.netloc or "youtu.be" in requestUrl.netloc:
info.redirect(QtCore.QUrl(f"https://piped.video{requestUrl.path}?{requestUrl.query}"))
Falkon.registerPlugin(YoutubeToPiped())
Что я делаю не так и/или есть ли другой способ решить эту проблему?