Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将Chrome标志与QtWebEngine(PyQt5)一起使用_Python_Pyqt5_Chromium_Qtwebengine_Google Chrome Flags - Fatal编程技术网

Python 将Chrome标志与QtWebEngine(PyQt5)一起使用

Python 将Chrome标志与QtWebEngine(PyQt5)一起使用,python,pyqt5,chromium,qtwebengine,google-chrome-flags,Python,Pyqt5,Chromium,Qtwebengine,Google Chrome Flags,对于PyQt5浏览器项目的开发,我了解到,通过将Chrome标志作为应用程序参数传递,它们将在代码启动时自动传递到QtWebEngineProcess.exe。我尝试过使用app=QApplication(sys.argv+[--enable force dark]),但这并没有使chromium以暗模式呈现网页(我还尝试了很多不同的标志名,所以我认为这不是问题) 我想知道,通过继承一个类并重写一个函数,并将QtWebEngineView连接到这个类,是否可以从PyQt5代码手动调用设置了自定义

对于PyQt5浏览器项目的开发,我了解到,通过将Chrome标志作为应用程序参数传递,它们将在代码启动时自动传递到
QtWebEngineProcess.exe
。我尝试过使用
app=QApplication(sys.argv+[--enable force dark])
,但这并没有使chromium以暗模式呈现网页(我还尝试了很多不同的标志名,所以我认为这不是问题)

我想知道,通过继承一个类并重写一个函数,并将
QtWebEngineView
连接到这个类,是否可以从PyQt5代码手动调用设置了自定义标志的
QtWebEngineProcess.exe
,就像
…(“QtWebEngineProcess.exe-[1st-flag]-[2nd-flag])


如果无法使用上述方法,是否有其他方法在
QtWebEngineView
中使用带有自定义标志的chromium?我正在运行PyQt5.14.2(Chromium 77)、Python 3.8.0、Windows 10来设置Chromium标志,可以使用以下方法(请参阅):

  • 作为参数传递给QApplication:

    args=[“--foo arg=foo value”,“--bar arg=bar value”]
    app=qtwidts.QApplication(args)
    #或
    #app=qtwidts.QApplication(sys.argv+args)
    
  • 通过环境变量
    QTWEBENGINE\u chromiu\u FLAGS设置它:

    导入操作系统
    os.environ[“QTWEBENGINE\u Chromiu\u FLAGS”]=“--foo arg=foo value--bar arg=bar value”
    app=qtwidts.QApplication(sys.argv)
    
因此,您的尝试是正确的,但问题似乎是并非所有chromium标志都受Qt WebEngine支持,
--启用强制暗
。搜索我找到的提供备选方案的网络:
--blink settings=darkMode=4,darkModeImagePolicy=2

从PyQt5导入QtCore、qtwidget、QtWebEngineWidgets
如果名称=“\uuuuu main\uuuuuuuu”:
导入操作系统
导入系统
环境操作系统[
“QTWEBENGINE_铬_标志”
]=--闪烁设置=darkMode=4,darkModeImagePolicy=2
app=qtwidts.QApplication(sys.argv)
#或
#args=sys.argv+[“--闪烁设置=darkMode=4,darkModeImagePolicy=2”]
#app=qtwidts.QApplication(sys.argv+args)
view=QtWebEngineWidgets.QWebEngineView()
视图.加载(QtCore.QUrl(“https://www.google.com"))
view.show()
sys.exit(app.exec_())