Selenium报错GPU state invalid after WaitForGetOffsetInRange
大概这样:DevTools listening on ws://127.0.0.1:49858/devtools/browser/xxxxxxxxxxxxxxxxxxxxxxxx
WARNING: All log messages before absl::InitializeLog() is called are written to STDERR
I0000 00:00:XXXXXXXXXXXXX voice_transcription.cc:58] Registering VoiceTranscriptionCapability
handshake failed; returned -1, SSL error code 1, net_error -101
handshake failed; returned -1, SSL error code 1, net_error -101
GPU state invalid after WaitForGetOffsetInRange.x
很烦……
不知道是什么坑,于是
options = ChromeOptions()
options.add_argument('--no-sandbox')
chrome = Chrome(options)
又来一个
(略):services\network\p2p\socket_manager.cc:147] Failed to resolve address for stun.l.google.com., errorcode: -105
遂
options = ChromeOptions()
options.add_argument('--ignore-certificate-errors')
options.add_argument('--ignore-ssl-errors')
options.add_argument('--no-sandbox')
chrome = Chrome(options)
仍无效,最终
options = ChromeOptions()
options.add_experimental_option('excludeSwitches', ['enable-logging'])
options.add_argument('--no-sandbox')
chrome = Chrome(options)
变成悄无声息地崩溃
有何解决方法否 针对Selenium报错"GPU state invalid after WaitForGetOffsetInRange"及其他相关问题,可尝试以下解决方案:
推荐组合参数:
from selenium.webdriver import Chrome
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')# 关键:解决共享内存问题
options.add_argument('--disable-gpu') # 关键:禁用GPU加速
options.add_argument('--ignore-certificate-errors')
options.add_argument('--disable-software-rasterizer')# 禁用软件光栅化
options.add_argument('--disable-extensions') # 禁用扩展
options.add_argument('--disable-infobars') # 禁用信息栏
options.add_experimental_option('excludeSwitches', ['enable-logging'])# 禁用控制台日志
driver = Chrome(options=options)
driver.set_window_size(1280, 1024)# 设置固定窗口尺寸
关键参数说明:
1. --disable-dev-shm-usage:解决Docker/Linux下的共享内存问题
2. --disable-gpu:强制禁用GPU加速(主要解决GPU报错)
3. --disable-software-rasterizer:禁用备用渲染器
4. 设置固定窗口尺寸可避免某些渲染问题
其他建议:
1. 确保浏览器和驱动版本匹配:
- 访问 chrome://version 查看Chrome版本
- 下载对应版本的 chromedriver
2. 更新必要组件:
sudo apt update && sudo apt upgrade -y# Linux
pip install --upgrade selenium chromedriver-autoinstaller
3. 如果使用Docker,基础镜像建议使用:
selenium/standalone-chrome
排查步骤:
1. 先仅添加 --disable-gpu 和 --disable-dev-shm-usage
2. 逐步添加其他参数测试
3. 检查 /var/log/syslog 或系统日志获取更详细错误
若仍崩溃,建议在启动代码中添加异常捕获:
try:
driver = Chrome(options=options)
except Exception as e:
print(f"浏览器启动失败: {str(e)}")
# 添加日志记录逻辑
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
[1]