【问题标题】:Setting a particular chrome driver setting/option设置特定的 chrome 驱动程序设置/选项
【发布时间】:2014-10-03 18:57:18
【问题描述】:

我需要通过selenium取消选中“在下载前询问每个文件的保存位置”Chrome 设置:

我什至不知道从哪里开始,因为documentation page 不包含所有可用选项的列表。而且,我还没有在chrome://flags/ 中找到合适的设置。

据我了解,我需要实例化Chrome OptionsDesired Capabilities,设置特定的选项/功能并将Chrome OptionsDesired Capabilities 实例传递给ChromeDriver 构造函数。

请注意,对于 Firefox,情况有所不同,有一个 about:config 页面,您可以在其中轻松找到设置并通过 Firefox Profile 进行设置。很简单。


我正在使用python绑定,但这不是必需的,问题或多或少是通用的。

【问题讨论】:

    标签: google-chrome firefox selenium selenium-webdriver chrome-options


    【解决方案1】:

    通过检查这个特定 Chrome 设置的 元素源 解决了这个问题:

    检查的 HTML:

    <div class="checkbox">
        <span class="controlled-setting-with-label">
          <input id="prompt-for-download" type="checkbox" pref="download.prompt_for_download" metric="Options_AskForSaveLocation">
          <span>
            <label for="prompt-for-download" i18n-content="downloadLocationAskForSaveLocation">Ask where to save each file before downloading</label>
            <span class="bubble-button controlled-setting-indicator" pref="download.prompt_for_download">
            <div tabindex="0" role="button"></div></span>
          </span>
        </span>
    </div>
    

    如您所见,input 元素具有pref="download.prompt_for_download" 属性。尤里卡!


    现在我们可以设置选项,例如使用 Python:

    from selenium import webdriver
    
    options = webdriver.ChromeOptions()
    prefs = {'download.prompt_for_download': False}
    options.add_experimental_option("prefs", prefs)
    
    driver = webdriver.Chrome(chrome_options=options)
    driver.get('http://stackoverflow.com')
    

    【讨论】:

      猜你喜欢
      • 2012-10-25
      • 2019-09-22
      • 2020-07-09
      • 1970-01-01
      • 1970-01-01
      • 2023-03-27
      • 2015-05-23
      • 2018-10-05
      • 1970-01-01
      相关资源
      最近更新 更多