【问题标题】:Excel VBA Selenium to open local webpages runtime-error as well as out of memory errorExcel VBA Selenium 打开本地网页运行时错误以及内存不足错误
【发布时间】:2017-05-21 11:31:56
【问题描述】:

我有一个本地 .HTM 文件列表,我想在 VBA (Excel 2013) 中使用 Selenium 解析这些文件。我遇到了两个问题,但首先是一些示例代码:

    Sub openSelenium()
        Dim html As HTMLDocument
        Dim selenium As SeleniumWrapper.WebDriver

        Set selenium = New SeleniumWrapper.WebDriver
        selenium.Start "firefox", "about:blank"
        selenium.Open "file:///D:/webpages/LE_1001.htm"
        Set html = selenium.getHtmlSource
    End Sub

基本上我想要的是将每个本地网站的HTML Source Code 存储在HTMLDocument 元素中,这样我就可以使用HTMLDocument,因为我熟悉它。 我在 Windows 7 Pro SP1 上使用 FireFox v43.0.2 和 Excel 2013。

问题: 上面的代码打开了 FireFox,但转到了这个网页:“https://www.mozilla.org/de/firefox/43.0.2/firstrun/learnmore/”并停在这里。

  1. VBA 很快冻结,我收到以下消息:
  2. 我收到了 Excel Out of memory 消息。有时即使在重新启动计算机后我也会收到此消息。但这并不经常发生。第 1 点更成问题。

非常感谢任何帮助。

【问题讨论】:

    标签: vba excel firefox selenium


    【解决方案1】:

    您需要使用作为 Firefox 一部分的默认配置文件打开 Firefox。获取默认配置文件并打开 firefoxdriver。这里是github URL

     Class Script
            Dim driver
    
            Sub Class_Initialize        
                Set driver = CreateObject("Selenium.FirefoxDriver")
                driver.SetProfile "default" 'Name of the profile
                driver.Get "https://mail.google.com/mail"
            End Sub
    
            Sub Class_Terminate
                driver.Quit
            End Sub
        End Class
    
        Set s = New Script
    

    如何检查配置文件是否存在?在火狐中?

    https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles

    【讨论】:

    • 感谢您的努力,但这不是我想要的。其实问题在我将Firefox降级到24.0版本后就解决了,所以我猜这与FireFox版本有关,
    【解决方案2】:

    问题似乎出在 Mozilla Firefox 的版本上。我使用的是版本 43.0.2

    降级到 24.0 版 后,代码似乎可以正常运行。所以我认为问题很可能毕竟是 FireFox 版本。

    Selenium for VBA 上次在 Dec. 2013 中更新,因此安装了大约在同一时间发布的 FireFox version 使其正常工作.

    编辑:只需使用 SeleniumBasic,您就可以避免所有这些问题。

    【讨论】:

      【解决方案3】:

      转到:

      C:\Users\your name\AppData\Local\SeleniumBasic\Scripts
      

      点击firefox并安装.net框架

      转到:

        control panel/turn on off windows feature and select `.net framework 3.5`
      

      【讨论】:

        猜你喜欢
        • 2016-07-10
        • 1970-01-01
        • 1970-01-01
        • 2018-01-25
        • 1970-01-01
        • 1970-01-01
        • 2014-08-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多