【问题标题】:Internet Explorer automation not working with IE11Internet Explorer 自动化不适用于 IE11
【发布时间】:2016-04-01 18:46:02
【问题描述】:

我有一些代码可以通过 VBA 中的 Internet Explorer 自动化从多个网站检索数据。我的代码在 IE8 上运行没有问题,但在 IE11 中,调用 Internet Explorer 对象的 Navigate 方法后,Document 和 LocationURL 没有更新;他们仍然引用之前显示的网站。下面是一些重现问题的代码:

Sub Test()
    Debug.Print "start"
    Dim ie
    Set ie = CreateObject("InternetExplorer.Application")
    ie.Visible = True
    ie.Navigate "http://en.wikipedia.org/wiki/Visual_Basic"
    wait ie
    Debug.Print "Current URL: " & ie.LocationURL
    ie.Navigate "http://en.wikipedia.org/wiki/Microsoft_Office"
    wait ie
    Debug.Print "Current URL: " & ie.LocationURL
    Set ie = Nothing
End Sub

Sub Wait(ie As Variant)
    Do While ie.Busy
        Application.wait DateAdd("s", 1, Now)
    Loop
End Sub

在装有 IE8 的机器上运行上述 Test 子程序时,它会打印两个不同的 URL,这是预期的行为。但是,当我在使用 IE11 的机器上运行相同的代码时,它会打印第一个 URL 两次。知道可能出了什么问题吗?

更新:我找不到解决方案,所以我寻求为每个 URL 打开一个新的 IE 窗口的解决方法。

【问题讨论】:

    标签: vba internet-explorer


    【解决方案1】:

    我不熟悉您使用的 VBA IE 自动化,但听起来您遇到的问题与 IE11 上的 Selenium WebDriver 相同。

    您可能需要遵循 Selenium Wiki 中提供的相同步骤。

    仅对于 IE 11,您需要在目标上设置一个注册表项 计算机,以便驱动程序可以保持与实例的连接 它创建的 Internet Explorer。对于 32 位 Windows 安装, 您必须在注册表编辑器中检查的键是 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE。对于 64 位 Windows 安装,关键是 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE。请注意, FEATURE_BFCACHE 子键可能存在也可能不存在,并且应该是 如果它不存在则创建。重要提示:在此键中,创建一个 名为 iexplore.exe 的 DWORD 值,值为 0。

    http://code.google.com/p/selenium/wiki/InternetExplorerDriver

    希望能解决您的问题!

    【讨论】:

    • 我尝试添加两个注册表项并重新启动机器,但不幸的是它没有工作...感谢您的回答。
    • 为我工作 - 在 IE11 64 位上。
    【解决方案2】:

    THX,你帮助了我。 W7 Ultimate 64bit 捷克语、IE11、Microstation V8i 中的 VBA 我使用如下代码:

    Public explorer As Object
    ....
    Set explorer = CreateObject("InternetExplorer.Application")
    ....
    
    If InStr(explorer.LocationURL, "CAPTCHA") = 0 Then
    ...
    End If
    

    【讨论】:

      猜你喜欢
      • 2013-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-14
      • 2013-07-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多