首页 > 解决方案 > 带有 Firefox 的 Raspberry Pi 上 Selenium / C# 中的 WebGL 和 GraphicsCriticalError

问题描述

我有一个树莓派 3b+。我编写了一个 .NET Core 5.0 程序,它使用 Selenium 在浏览器上执行一些任务。在我的 Windows PC 上一切正常 100%。但是在运行 64 位 Ubuntu Server Focal 版本的 Raspberry Pi 上运行时出现错误。我安装了 Gecko 驱动程序和 Firefox。该程序能够完成其任务,但会引发许多关于以下方面的错误:

“崩溃注释GraphicsCriticalError:| [0] [GFX1-]:glxtest:无法打开与X服务器的连接(t = 4.70096)[GFX1-]:glxtest:无法打开与X服务器的连接”

“JavaScript 警告:https ://js.arcgis.com/3.38/esri/dijit/BasemapGallery.js,第 22 行:WebGL 警告::WebglAllowWindowsNativeGl:false 限制在此系统上创建上下文。” “* GL 驱动程序选项已用尽。(FEATURE_FAILURE_WEBGL_EXHAUSTED_DRIVERS)”“JavaScript 警告:https ://js.arcgis.com/3.38/init.js ,第 1171 行:无法创建 WebGL 上下文:WebGL 创建失败:”

我尝试安装 xvfb 但什么也没做。我正在无头运行,驾驶员确认我正在无头运行,但似乎无论如何都在期待显示????

如何解决这些错误?请注意,我不在乎是否必须使用 Firefox、Chromium 或其他浏览器。但似乎 Firefox 是最容易安装的。

标签: selenium.net-coreraspberry-pigeckodriver

解决方案


我想到了。我将操作系统更改为 Raspberry Pi OS 64-bit Lite beta,轻松安装 Chrome 和 Chrome 驱动程序……没问题。

我猜问题是在运行 Ubuntu 时,软件包存储库的 arm64 软件包版本不匹配,并且有些东西是通过“snap”安装的,这对于必须协同工作的程序来说是不可行的。在 Raspberry OS 存储库中,它们具有匹配的版本并且没有“快照”。至少现在一切正常,以防其他人看到这一点。


推荐阅读