【问题标题】:Can't set chrome preferences in vba selenium无法在 vba selenium 中设置 chrome 首选项
【发布时间】:2019-12-14 21:04:17
【问题描述】:

我在 vba 中结合 selenium 创建了一个脚本来解析来自this webpage 的第一个标题。大多数时候,我的脚本会抛出此错误timeout 或此错误Run-time error 21; Application defined or Object defined error,而有时它可以完美运行。由于页面需要太多时间来加载其内容,我想我遇到了加载缓慢的副作用之一,所以我希望禁用该页面中的图像。

我试过了:

Sub TestSelenium()
    Const URL$ = "https://www.marketscreener.com/"
    Dim driver As Object, post As Object
    Set driver = New ChromeDriver

    driver.get URL
    Set post = driver.FindElementByCss(".une_title")
    MsgBox post.Text
    driver.Quit
End Sub

当我使用 python selenium 绑定时,我可以使用这个选项来禁用图像:

option = webdriver.ChromeOptions()
chrome_prefs = {}
option.experimental_options["prefs"] = chrome_prefs
chrome_prefs["profile.default_content_settings"] = {"images": 2}
chrome_prefs["profile.managed_default_content_settings"] = {"images": 2}

driver = webdriver.Chrome(options=option)

我知道有一些选项可以在 vba 中设置不同的首选项,但是在禁用图像的情况下,我找不到任何合适的方法来设置它们:

driver.SetPreference
driver.AddArgument

如何在 vba selenium 中设置 chrome 首选项以让页面在没有图像的情况下快速加载?

【问题讨论】:

    标签: vba selenium web-scraping selenium-chromedriver


    【解决方案1】:

    您总是可以尝试无头运行它吗?这应该消除与图像加载相关的任何延迟。

    driver.AddArgument "--headless"
    

    【讨论】:

      【解决方案2】:

      要禁用该页面中的图像,您可以在 vba selenium 绑定中设置首选项:

      driver.SetPreference "profile.managed_default_content_settings.images", 2
      

      当您实施上述建议时,您的脚本如下所示:

      Sub TestSelenium()
          Const URL$ = "https://www.marketscreener.com/"
          Dim driver As Object, post As Object
          Set driver = New ChromeDriver
      
          driver.SetPreference "profile.managed_default_content_settings.images", 2
          driver.get URL
          Set post = driver.FindElementByCss(".une_title")
          MsgBox post.Text
          Stop
          driver.Quit
      End Sub
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-09-06
        • 1970-01-01
        • 2012-05-09
        • 2016-03-11
        • 2013-03-27
        • 1970-01-01
        • 2017-03-31
        • 1970-01-01
        相关资源
        最近更新 更多