C # селен хромедрайвер, аутентифицирующий прокси - PullRequest
0 голосов
/ 31 марта 2019

Следующий C # предназначен для открытия драйвера селен и подключения к прокси с аутентификацией. Chrome предупреждение появляется на driver.Navigate (). GoToUrl (...) и не может пройти. Это означает, что я не могу справиться с предупреждением в try {} catch {}.

Как я могу аутентифицировать прокси?

Самое близкое, что я нашел, было это сообщение

using System;
using System.Net;
using System.Net.Sockets;

using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Support.UI;

namespace ConnectProxy
{
    internal class Program
    {
        private static void Main()
        {

            var proxy = new
            {
                Ip = "XXX",
                Username = "YYY",
                Password = "ZZZ",
                Port = "80"
            };

            string PROXY = proxy.Ip + ":" + proxy.Port;

            Proxy pro = new Proxy();
            pro.HttpProxy = PROXY;
            pro.FtpProxy = PROXY;
            pro.SslProxy = PROXY;

            ChromeOptions options = new ChromeOptions();
            options.Proxy = pro;

            IWebDriver driver = new ChromeDriver(options);
            driver.Navigate().GoToUrl("https://" + proxy.Username + ":" + proxy.Password + "@" + "whatismyipaddress.com/");

            try
            {

                WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(15));
                wait.Until(c => c.FindElement(By.Id("content-section")));

                IAlert alert = driver.SwitchTo().Alert();
                alert.SetAuthenticationCredentials(proxy.Username, proxy.Password);
                alert.Accept();
            }
            catch { }
        }
    }
}

1 Ответ

0 голосов
/ 01 апреля 2019

Согласно документам селена , попытка сделать это через селен не является доступным ресурсом.Вместо этого, согласно post , вам нужно добавить расширение в chrome с прокси-хостом и деталями аутентификации внутри него.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...