Node.js 节点selenium webdriver“;错误:在等待WebDriver服务器时超时;

Node.js 节点selenium webdriver“;错误:在等待WebDriver服务器时超时;,node.js,selenium,selenium-webdriver,Node.js,Selenium,Selenium Webdriver,按照中的说明操作时,以及从其站点运行此代码段后: var driver = new webdriver.Builder(). withCapabilities(webdriver.Capabilities.chrome()). build(); driver.get('http://www.google.com'); driver.findElement(webdriver.By.name('q')).sendKeys('webdriver'); driver.findElemen

按照中的说明操作时,以及从其站点运行此代码段后:

var driver = new webdriver.Builder().
   withCapabilities(webdriver.Capabilities.chrome()).
   build();

driver.get('http://www.google.com');
driver.findElement(webdriver.By.name('q')).sendKeys('webdriver');
driver.findElement(webdriver.By.name('btnG')).click();
driver.wait(function() {
 return driver.getTitle().then(function(title) {
   return title === 'webdriver - Google Search';
 });
}, 1000);

driver.quit();
我得到了这个错误:

Error: Timed out waiting for the WebDriver server at http://XXX.XXX.X.XXX:60065/
    at <anonymous>
    at <anonymous>
    at <anonymous>
    at <anonymous>
    at <anonymous>
    at <anonymous>
    at <anonymous>
    at <anonymous>
    at <anonymous>
    at <anonymous>
==== async task ====
WebDriver.createSession()
错误:在等待WebDriver服务器时超时http://XXX.XXX.X.XXX:60065/
在
chromedriver
可执行文件位于我的
/usr/local/bin
目录中,可在我的
路径上访问

我注意到,当我从命令行运行
chromedriver
时,它在端口
9515
上运行,而节点代码在
60065
上查找它。但是,仅使用
chromedriver
运行不需要任何额外的配置


有人知道我为什么会出现这个错误吗?

我今天遇到了这个问题,我几乎可以说这是当前版本的selenium webdriver(2.41.0)的一个bug

但我认为修复程序还没有进入npm


Chromedriver降级到2.9.248307版对我来说很有效。

基于@Andrej Kaurin的评论:

你可以设置
directconnect:true
在量角器配置中

设置此选项后,量角器直接与浏览器驱动程序连接,不需要selenium


更多详细信息:

对我来说,ChromeDriver的版本
78.0.33904.70
和Chrome浏览器的版本
78.0.3904.87

以下是获取Chrome驱动程序的链接:


如何检查您的chrome浏览器版本:

对我来说相同2.10不起作用,2.9工作得很完美。谢谢各位。在量角器配置中加入“directConnect:true”解决了我可能的重复问题