无法在c#中使用Selenium禁用硬件加速

j0pj023g  于 2023-05-22  发布在  C#
关注(0)|答案(1)|浏览(190)

我使用C#中的Selenium库来打开和控制Chrome。当Chrome打开时(我正在测试播放事件),我会截取显示器的屏幕截图并处理它们,以确定某些事件何时发生。问题是,由于硬件加速(我想这就是问题所在),打印屏幕返回空(黑色)。如何在我的代码中强制Selenium打开的chrome禁用硬件加速?
我试过在chrome中禁用硬件加速(在设置和chrome://flags中),但Selenium还是用硬件加速打开了chrome。我试过强制Selenium在禁用硬件加速的情况下打开chrome,如下所示:

new DriverManager().SetUpDriver(new ChromeConfig());
                    var options = new ChromeOptions();
                    options.AddArgument("--disable-gpu");
                    driver = new ChromeDriver(options);

但是代码似乎忽略了参数,并且无论如何都启用了加速。谁能帮我解决这个问题?我宁愿不改变我截图的方式,但如果有必要,这也会很有帮助。谢谢你。

fkvaft9z

fkvaft9z1#

试试这两个参数:

options.AddArgument("disable-gpu");
options.AddArgument("disable-software-rasterizer");

相关问题