错误号码:33:尝试使用SeleniumBasic

时间:2018-10-07 17:56:38

标签: excel-vba selenium google-chrome selenium-webdriver selenium-chromedriver

我一直在使用Internet Explorer提供的COM界面,但是,由于某些站点现在已经转移并且不支持IE,我一直在寻求用SeleniumBasic代替它。

由于这对我来说是全新的,所以我处于最基本的级别-我已经下载了 硒类型库(我已经下载了Selenium library reference from Github,并且在模块中进行了引用。)

我已经输入了非常基本的代码来对其进行测试,但出现以下错误:

错误编号:33 错误说明:

  

SessionNotCreatedError会话未创建来自未知的异常   错误:Runtime.executionContextCreated具有无效的“上下文”:   {“ auxData”:{“ frameId”:“ AE85B634088DDFB4B8E7D65A145ADA0F”,“ isDefault”:true},“ id”:1,“ name”:“”,“ origin”:“://”}   (工作阶段资讯:chrome = 69.0.3497.100)(驱动程式资讯:   chromedriver = 2.21.371459   (36d3d07f660ff2bc1bf28a75d1cdabed0983e7c4),平台= Windows NT 10.0   x86_64)

代码是;

Sub TestCode()
Dim driver as New Selenium.Chrome

driver.get "www.Google.com" 

End Sub

我也曾在firefox和Edge浏览器上尝试过此操作,但遇到了相同的问题-有关可能出问题的任何建议吗?

1 个答案:

答案 0 :(得分:1)

此错误消息...

SessionNotCreatedError session not created exception from unknown error: Runtime.executionContextCreated has invalid 'context': {"auxData":{"frameId":"AE85B634088DDFB4B8E7D65A145ADA0F","isDefault":true},"id":1,"name":"","origin":"://"} 
 (Session info: chrome=69.0.3497.100) 
 (Driver info: chromedriver=2.21.371459 (36d3d07f660ff2bc1bf28a75d1cdabed0983e7c4),platform=Windows NT 10.0 x86_64)

...表示 ChromeDriver 无法启动/产生新的 WebBrowser ,即 Chrome浏览器会话。

您的主要问题是所使用的二进制版本之间的不兼容性

  • 您正在使用 chromedriver = 2.21
  • chromedriver=2.21的发行说明中明确提到以下内容:
  

支持 Chrome v46-50

  • 您正在使用 chrome = 69.0
  • ChromeDriver v2.42的发行说明中明确提到以下内容:
  

支持 Chrome v68-70

因此 ChromeDriver v2.21 Chrome浏览器v69.0

之间存在明显的不匹配

解决方案


更新A

根据florentbr/SeleniumBasic SeleniumBasic 基于硒的浏览器自动化框架,用于VB.Net,Visual Basic应用程序和VBScript )的最新版本似乎是仅发布v2.0.9.0

根据版本v2.0.9.0 CHANGELOG,基本组件为:

  • Firefox驱动程序版本2.52.0
  • IE驱动程序版本2.52.1

更新B

如果打算在 Firefox 中使用 GeckoDriver ,则可以遵循以下矩阵:

geckodriver-firefox