使用chrome驱动C#进行代理验证

时间:2018-04-25 09:13:18

标签: c# selenium-chromedriver

我想在我的Chrome驱动程序中使用代理(带有用户名和密码的HTTP代理),它似乎不适用于我的C#应用​​程序。 它在启动chrome浏览器时不使用代理。

希望有人能帮助我

谢谢!

示例代码:

string proxyUrl = String.Format(“http://{0}:{1}@{2}:{3}”, _proxy.textUsername, _proxy.textPassword,_proxy.textProxy, _proxy.numberProxyPort);

Proxy proxyObj = new Proxy()
{
IsAutoDetect = false,
Kind = ProxyKind.Manual,
HttpProxy = proxyUrl,
SslProxy = proxyUrl
};

options.AddArguments("–proxy-server="+ proxyUrl);
options.Proxy = proxyObj;
IWebDriver driver = new ChromeDriver(options);
driver.Navigate().GoToUrl("https://whatismyipaddress.com/");

2 个答案:

答案 0 :(得分:1)

很多人都给出了错误的答案。

我实际上已经在这里坐了2-3个小时,并且在查看了多个站点后想出了解决方法。

如果使用代理支持,并且具有IP身份验证...,则必须使用扩展名来获取用于身份验证的用户名/密码...如果它是可在任何地方使用的IP,则应该可以。

但是,如果您确实需要使用扩展名,则可能无法正常运行。

请参阅下面我使用的代码,p.HTTP代理将是您传入的代理。

        Proxy p = new Proxy();
        p.IsAutoDetect = (false);

        p.HttpProxy = Proxy;
        p.SslProxy = Proxy;
        option.AddArguments("--proxy-server=http://" + p.HttpProxy);

答案 1 :(得分:0)

尝试为Chrome创建自己的扩展程序。如果仍然合理,请点击此处链接Answer