gpt4 book ai didi

c# - 在 C# 中将 Httpheader 添加到 selenium chrome webdriver

转载 作者:行者123 更新时间:2023-11-30 13:30:38 25 4
gpt4 key购买 nike

我的 C# 代码看起来像这样用于创建 chrome web 驱动程序,我想将自定义 HTTP header 添加到我的所有 http 请求。

例如:用户代理:Android

var service = ChromeDriverService.CreateDefaultService(@"c:\Chrome\");
var option = new ChromeOptions();
_driver = new ChromeDriver(service, option);

我们有 firefox 的方式,如链接所示,但对于 chrome,它不起作用。 https://eveningsamurai.wordpress.com/2013/11/21/changing-http-headers-for-a-selenium-webdriver-request/

感谢任何帮助

最佳答案

我已经能够使用 ModHeaders Chrome extension 来管理它.下载插件 CRX 文件并将其加载到您的测试 Chrome 实例中。

var options = new ChromeOptions();
options.AddExtension("WebDrivers/modHeader_2_1_1.crx");

var driver = new ChromeDriver(options);

然后您可以使用本地存储配置插件,因为这也是插件存储其配置的地方。

// set the context to access extension local storage
Configuration.driver.Navigate().GoToUrl("chrome-extension://idgpnmonknjnojddfkpgkljpfnnfcklj/icon.png");

Configuration.driver.ExecuteScript(
"localStorage.setItem('profiles', JSON.stringify([{ " +
" title: 'Selenium', hideComment: true, appendMode: '', " +
" headers: [ " +
" {enabled: true, name: 'MY_HEADER', value: 'MY_VALUE', comment: ''} " +
" ], " +
" respHeaders: [], " +
" filters: [] " +
"}])); ");

最后你可以导航到某个地方并检查标题是否已加载

    Configuration.driver.Navigate().GoToUrl("http://example.com/");

关于c# - 在 C# 中将 Httpheader 添加到 selenium chrome webdriver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30813287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com