我在AWS上的EC2实例(ubuntu)上运行了一个python脚本。它使用
硒。好几个星期都很好用,然后突然间,
今天,它停止工作,出现以下错误:
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 79
这是我在ubuntu上运行的html" target="_blank">python脚本:
#install dependencies
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.common.exceptions import ElementNotVisibleException
from selenium.common.exceptions import NoSuchElementException
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
#Set up chromedriver
options = Options()
options.add_argument('--no-sandbox')
options.add_argument('--window-size=1420,1080')
options.add_argument('--headless')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--disable-gpu')
options.add_argument("--disable-notifications")
driver = webdriver.Chrome(chrome_options=options)
奇怪的是chromedriver和Chrome浏览器似乎是兼容的。
运行“chromedriver-v”时,我看到的版本是:
ChromeDriver 79.0.3945.79 (29f75ce3f42b007bd80361b0dfcfee3a13ff90b8-refs/branch-heads/3945@{#916})
And, running chromium-browser --version
I get:
Chromium 79.0.3945.79 Built on Ubuntu , running on Ubuntu 18.04
Upon running chromium-browser -v
I see :
(chromium-browser:2901): Gtk-WARNING **: 17:28:14.613: cannot open display:
我希望回答两个问题:
1怎么能工作几个星期,然后突然,chromedriver和chrome决定不合作?是不是chromedriver或者chrome被更新了而另一个没有被更新?除了更新从crontab运行脚本的时间之外,我没有做任何更改。
2当我的chromedriver和chrome浏览器的版本完全相同时,为什么会发生这种错误?让chromedriver在ubuntu上使用chrome(headless)是一个非常漫长的过程,如果可能的话,我想“设置它,然后忘记它”。希望能更好地理解这个问题,这样我就可以避免它一次又一次的发生。
谢谢。
This error message…
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 79
…意味着ChromeDriver v79无法启动/生成新的
_浏览上下文,即浏览器版本所在的Chrome浏览器会话
除v79.x外。
您的主要问题是二进制文件版本之间的不兼容
您使用的方法如下:
*您提到过使用_chromedriver=79.0.3945.79。尽管发布的版本是ChromeDriver 79.0.3945.16(2019-10-30)和ChromeDriver 79.0.3945.36(2019-11-18)然而,chromedriver=79.0.3945.79的发行说明提到以下内容:
支持Chrome v79
您使用的是chromium-browser v79.0.3945.79浏览器。
ChromeDriver在默认位置安装时支持“google chrome”,与底层操作系统相关:
1对于Linux系统,ChromeDriver希望“/usr/bin/google chrome”是
符号链接到实际的Chrome二进制文件。
有两种解决方案:
您可以将安装在默认位置的“google chrome”升级到当前的chrome 79.0版本。(根据ChromeDriver v79.0发行说明)
或者,您可以使用文档后面的Chrome browser
二进制位置[在非标准位置使用Chrome可执行文件]覆盖默认Chrome二进制位置,即“/usr/bin/google Chrome”(https://sites.google.com/a/chromium.org/chromedriver/capabilities#TOC-使用-a-Chrome-executable-in-a-non-standard-location)作为跟随:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.binary_location='/path/to/chromium-browser.exe'
driver = webdriver.Chrome(executable_path=r'C:\Utility\BrowserDrivers\chromedriver.exe', options=options)
driver.get('http://google.com/')
通过IDE清理项目工作区,并用所需的依赖项重建项目。
如果您的基本Web客户端版本太旧,请卸载它并安装最新的GA和发布版本的Web客户端。
重新启动系统。
以非根用户身份执行您的“@Test”。
*总是调用司机。退出()
withintearDown(){}
方法,以优雅地关闭和销毁|WebDriver|和|Web Client|实例。
我现在是robot Framework的新手。我现在使用的是chrome和chromedriver的最新Windows版本,它是80,但是当我尝试运行测试时,它给出的消息是“SessionNotCreatedException:message:session not Created:This version of chromedriver only supports chrome version
我试图使用rsDriver函数运行RSelenium,但当我运行时,我得到一条消息,告诉我需要一个较新版本的Chrome:
问题内容: 我想打开显示错误的Chrome浏览器。 在这里,我期待的是我的Chrome浏览器,但会引发类似 问题答案: 此错误消息… …暗示 ChromeDriver v75 仅支持 Chrome浏览器v75 ,而该功能在您的系统中不可用。 您的主要问题是所使用的二进制版本之间的 不兼容性 ,如下所示: 您正在使用 chromedriver = 75.0.3770.8 chromedriver =
我已经研究了很多,并使用了各种论坛中提到的许多可能的解决方案,但没有一个对我有效。我试图在CI/CD管道中运行它,尽管能够在本地运行量角器测试用例并能够启动浏览器,但在CI/CD管道构建中它失败了。下面是量角器2.5.4 E/启动器-会话未创建时出现问题的详细信息:此版本的ChromeDriver仅支持Chrome版本79 我在包中的脚本下使用以下postinstall。json 对于上面的脚本命
问题内容: 我目前正在使用Chrome 75,并且已经下载了适用于Linux 的兼容Chromedriver。我也将其添加到PATH变量中。但是,当我尝试初始化驱动程序时,出现以下错误: 我从此消息中得到的信息是我的Chromedriver适用于Chrome版本76,但我的Chromedriver和Chrome浏览器均为75版本。 我什至尝试将Chromedriver从文件中完全删除,但仍然收到相
问题内容: 我正在尝试使用rsDriver函数运行RSelenium,但是当我运行时,出现 一条消息,告诉我我需要更新版本的Chrome: 错误消息似乎表明我需要Chrome版本74.0.3729.6,但是当我查看Chrome的设置时,它表明我正在运行最新的稳定版本(73.0.3683.75)。进一步搜寻之后,74.0.3729.6是Chrome的预发行开发版本:我是否需要安装此版本才能将Chro