C#Selenium Firefox WebDriver在尝试使用socks5代理

时间:2018-03-10 16:00:11

标签: c# selenium proxy socks

我已经安装了nuget,一个包含firefox驱动程序和selenium的软件包。

WebDriver 3.10.0.0,firefox使用的是58.0.2(x64)

我使用此代码:

public class SeleniumWorker
{
        IWebDriver ffBaseDriver = null;
        INavigation ffBaseNavigator = null;
        string proxy, referer;
        public SeleniumWorker(string proxy,string referer)
        {
            this.proxy = proxy;
            this.referer = referer;

            if (string.IsNullOrEmpty(proxy))
            {
                this.ffBaseDriver = new FirefoxDriver();
            }
            else
            {
                FirefoxOptions ffOptions = new FirefoxOptions();
                ffOptions.Proxy = new Proxy { SocksProxy = proxy };
                this.ffBaseDriver = new FirefoxDriver(ffOptions);
            }
        }

        public void DoAction(Object param)
        {
            this.ffBaseDriver.Navigate();
            this.ffBaseNavigator.GoToUrl(this.referer);
        }
}
.....
// somewhere in code:
worker = new SeleniumWorker("127.0.0.1:9050","https://google.com");
worker.DoAction();

当在this.ffBaseDriver = new FirefoxDriver(ffOptions);设置FFoptions时,我得到一个像这样的例外:

InvalidArgumentError: Expected [object Undefined] undefined to be an integer (SessionNotCreated)

堆栈跟踪:

в OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)
   в OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
   в OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities)
   в OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor, ICapabilities desiredCapabilities)
   в OpenQA.Selenium.Firefox.FirefoxDriver..ctor(FirefoxOptions options)
   в Br30AutoReg.SeleniumReger..ctor(String proxy, String refererd) в C:\Users\pashok\documents\visual studio 2017\Projects\Test\Test\SeleniumWorker.cs:строка 34
   в Br30AutoReg.ControlThread.RegistrationLoop(Object obj) в C:\Users\pashok\documents\visual studio 2017\Projects\Test\Test\ControlThread.cs:строка 216

我如何设置socks5代理呢?此外,我有一个问题,我不想创建新的,我可以操纵:从selenium配置,并禁用WEBRtc?

0 个答案:

没有答案