这是我的环境:
- Ubuntu 20嵌入式系统
- selenium 3.141.0
- 谷歌 chrome 稳定101.0.4951.64 - 1
- Chrome驱动程序101.0.4951.41
我在headless模式下运行这段简单的代码(我不需要GUI):
chrome_options = Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--ignore-certificate-errors')
browser = webdriver.Chrome(options=chrome_options)
# get a web page
browser.get("myUrl")
# signing in...
username = browser.find_element_by_name("user")
password = browser.find_element_by_name("pass")
submit_button = browser.find_element_by_xpath("...")
username.send_keys("user")
password.send_keys("pass")
submit_button.click()
print('User logged in...')
# Click on the update button in the next page
update_button = browser.find_element_by_id('barbaz')
update_button.click()
browser.close()
这段代码在旧版本的google-chrome-stable和ChromeDriver中运行良好,但奇怪的是,现在browser.close()
触发了这个错误:
Web驱动程序异常:消息:无法访问chrome(会话信息:Headless Chromium = 101.0.4951.64)
发生什么事了?
- 编辑:**
browser.quit()
而不是browser.close()
似乎是固定的。我把这个问题留在一边,以防有人想解释背后的原因。
1条答案
按热度按时间tp5buhyn1#
browser.quit()
和browser.close()
分别用于关闭所有选项卡和终止会话以及仅关闭运行选项卡。因此,如果仅在使用关闭时,错误仅显示您的运行选项卡不可用。