Selenium на Raspberry Pi с использованием Mono (C #)

Я написал C# программу, используя селен. Он отлично работает при использовании на Windows, но не на Rapsberry Pi. [Работает без селеновой части].

Вот код:

var options = new FirefoxOptions();
                options.BrowserExecutableLocation = @"C:\Program Files (x86)\Mozilla Firefox\firefox.exe";

//IWebDriver driver = new FirefoxDriver(options);   // WINDOWS VERSION
IWebDriver driver = new FirefoxDriver(); // LINUX VERSION
string xpath = "html/body/div[1]/div/main/div/section/section[2]/div/div[2]/div[1]/div/div/textarea";
string xpathButton = "html/body/div[1]/div/main/div/section/section[2]/div/div[2]/div[1]/div/button";

driver.Url = myurl;
driver.FindElement(By.XPath(xpathButton)).Click();
List<IWebElement> webElems = driver.FindElements(By.XPath(xpath)).ToList();

string comparestring = "";
int comparecounter = 0;

foreach (IWebElement element in webElems)
{
    comparestring = element.Text;
}

Я получаю следующую ошибку на raspberry pi:

В соединении отказано

и: OpenQA.Selenium.WebDriverException: невозможно найти соответствующий набор возможностей в OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError (OpenQA.Selenium.Remote.Response errorResponse) [0x00000]. .Execute (System.String driverCommandToExecute, System.Collections.Generic.Dictionary`2 параметры) [0x00000] в: 0 в OpenQA.Selenium.Remote.RemoteWebDriver.StartSession (ICapabilities requiredCapabilities) [0x00000] в: 0 в OpenQA.Selenium. Remote.RemoteWebDriver..ctor (ICommandExecutor commandExecutor, требуемые возможности ICapabilities) [0x00000] в: 0 в OpenQA.Selenium.Firefox.FirefoxDriver..ctor (OpenQA.Selenium.Firefox.FirefoxDriverService.service, параметры OpenQAptions.Selenfox commandTimeout) [0x00000] в: 0 в OpenQA.Selenium.Firefox.FirefoxDriver..ctor (параметры OpenQA.Selenium.Firefox.FirefoxOptions) [0x00000] в: 0 в OpenQA.Selenium.Firefox.FirefoxDriver..ctor () [0x00000 ] в : 0 в Dialga.MyBot + c__async8.MoveNext () [0x00000] в: 0


person Gami    schedule 06.07.2017    source источник
comment
Предположительно, ваш путь к исполняемому файлу Firefox на Pi неверен   -  person Richard Boyce    schedule 06.07.2017
comment
Сомневаюсь, но сейчас я пробую следующий путь: /usr/share/applications/firefox-esr.desktop   -  person Gami    schedule 06.07.2017
comment
Я по-прежнему получаю ту же ошибку, поэтому проблема не устранилась. [Опять неправильный путь?]   -  person Gami    schedule 06.07.2017


Ответы (1)


Так что у меня все заработало. Причина, по которой он не работал должным образом, заключалась в несоответствии между версиями Firefox и geckodriver. Я решил это, загрузив Firefox 52.2-ESR и используя geckdrover 1.7. [Селен 3.4].

К сожалению, Firefox замедляет работу Raspberry Pi, поэтому я переключил все это на веб-драйвер PhantomJS.

person Gami    schedule 07.07.2017