当我尝试在三台计算机中的两台上运行代码时,出现了以下错误:
[0502/155335.565:ERROR:gpu_process_transport_factory.cc(1007)] Lost UI shared context.
以下是代码:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import os
chrome_options = Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument("--disable-gpu")
chrome_options.add_argument("--window-size=1920x1080")
chrome_driver = os.getcwd() + "\\chromedriver.exe"
print "chrome driver:" + chrome_driver
driver = webdriver.Chrome(chrome_options=chrome_options,
executable_path=chrome_driver)
driver.get("http://www.google.com")
luck_button = driver.find_element_by_css_selector("[name=btnI")
luck_button.click()
driver.get_screenshot_as_file("capture.png")
现在我已经检查了所有的系统,它们都运行着Windows 10 64位操作系统,Google Chrome 64位版本:66.0.3359.139,Python 2.7 32位版本,chromedriver.exe 32位版本和Pycharm 2018.1.1。
有趣的是,如果我不使用无头选项来运行这个程序,那么一切都可以正常工作。浏览器会弹出,点击“我感到幸运”按钮,并且会拍摄一个截屏。只有当我添加了无头选项时才会出现这个错误。
我不确定为什么只有一个系统上能够正常工作,而其他系统却使用相同的软件。
ember exam
运行测试,但由于这个错误它完全停止了。有没有什么解决方法可以修复它? - xbmonoember exam
进行评论。但是,根据来自 Chromium团队 的文档,错误 Lost UI shared context 看起来无害,并且在 Windows10操作系统 上很容易复现,这并不是一个阻碍问题。 - undetected Seleniummodule.exports = { "test_page": "tests/index.html?hidepassed", "disable_watching": true, "parallel": 6, "launch_in_ci": [ "Chrome" ], "launch_in_dev": [ "Chrome" ], "browser_start_timeout": 80, "browser_args": { "Chrome": [ '--no-sandbox', '--disable-gpu', '--headless', '--window-size=1440,900' ] } };
- xbmono--disable-gpu
不是所需的参数。请参见讨论Lost UI Shared Context Error - Running protractor tests in headless chrome。 - undetected Selenium