【问题标题】:Automate Google Chrome using VBA and Selenium使用 VBA 和 Selenium 自动化 Google Chrome
【发布时间】:2019-01-04 06:34:53
【问题描述】:

我正在尝试使用 Selenium 插件从 Excel VBE 操作 Chrome。

  • 我的参考文献中包含了 Selenium 类型库。
  • 我正在运行 Chrome v67。
  • 我已经替换了 Selenium 中的 Chromedriver.exe 文件 与 Chrome v67 版本兼容的基本目录(即 Chrome 驱动程序版本 38)。

我的 VBA 代码:

Public Sub seleniumtutorial()
Dim bot As New WebDriver
'bot.AddArgument "--headless"
'bot.AddArgument "--disable-extensions"
bot.Start "chrome", "http://google.com"
bot.Get "/"
bot.TakeScreenshot.SaveAs (ActiveWorkbook.Path + "/screenshot.jpg")
bot.Quit
End Sub

我收到以下错误消息:

如果我包含这行代码,则没有错误消息,但我看不到 Chrome 窗口:

bot.AddArgument "--headless"

如果我按照 SO 对类似问题的回答所建议的那样包含这行代码,它并不能解决问题。

bot.AddArgument "--disable-extensions"

【问题讨论】:

  • 克里斯-谢谢你。非常感激。你恢复了我对 SO 社区的信心;)

标签: excel vba selenium google-chrome google-chrome-extension


【解决方案1】:

从 VBA 的角度来看,您使用错误的驱动程序类来自动化 Chrome。您确认了 ChromeDriver 的位置,但在您的代码中完全忽略了它。

在此行中将WebDriver 替换为ChromeDriverDim bot As New WebDriver

或使用:Dim bot As New Selenium.ChromeDriver

这是问题 1。问题 #2 是您收到的错误消息。当您使用 WebDriver 而不是策略警告时,您应该会收到运行时错误。

没有提供足够的信息来解决问题 #2,它可能与 VBA 没有任何关系。鉴于错误消息,您可能希望与您的管理员聊天。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-25
    • 2016-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-04
    • 2021-01-04
    • 1970-01-01
    相关资源
    最近更新 更多