0

我正在尝试通过 Selenium 和 ruby​​ 为 chrome 中的 modHeaders 添加请求标头。

我已经尝试过这段代码,但没有运气。Mod Header 扩展已添加到浏览器,但无法向该扩展添加请求标头。

请帮助我在我的代码中找到问题。

谢谢你。

require 'selenium-webdriver'
driver = Selenium::WebDriver.for :chrome, 
   :desired_capabilities =>Selenium::WebDriver::Remote::Capabilities.chrome({
        'chromeOptions' => {
            'extensions' => [Base64.strict_encode64(File.open('C:\Users\balinasr\Downloads\mod.crx', 'rb').read) ],
            'prefs'=> {
                'modifyheaders.headers.name'=>'aaa',
                'modifyheaders.headers.value'=>'bbb'
             }
         }
    })
4

1 回答 1

0

我知道这不是您要寻找的确切答案,但这是我使用的 Java 代码。经过一些谷歌搜索和研究,在浏览器的 LocalStorage 中设置值对我来说太难了:)。我所做的是创建一个 Chrome 用户,该用户配置了我在启动 chromedriver 时加载的插件。

//to start the ChromeDriver with a plugin (from local.properties f.e.)
    if (System.getProperty(CHROME_USER_DATA_DIR) == null && chromeUserDataDir != null && !chromeUserDataDir
        .equalsIgnoreCase("@null")) {
        options.addArguments("user-data-dir="+chromeUserDataDir);
        if (System.getProperty(CHROME_EXTENSION1) == null && chromeExtension1 != null && !chromeExtension1
            .equalsIgnoreCase("@null")){
            options.addArguments("load-extension="+chromeUserDataDir+chromeExtension1);
        }
    }

参数是:

chrome.user.data.dir=C:/Users/[user]/AppData/Local/Google/Chrome SxS/User Data/Default/
chrome.user.extension1=Extensions/idgpnmonknjnojddfkpgkljpfnnfcklj/2.1.1_0/
于 2016-11-29T14:53:55.620 回答