#c# #selenium #authentication #selenium-webdriver #microsoft-edge
#c# #selenium #аутентификация #selenium-webdriver #microsoft-edge
Вопрос:
Проблема
При попытке запустить приложение в интегрированной среде разработки (Jetbrains Rider) возникает ошибка:
[15:14:06.969] - Listening on http://127.0.0.1:43237/ [15:14:06.969] - Listening on http://[::1]:43237/ Unhandled exception. OpenQA.Selenium.WebDriverException: The new session command returned a value ('Unknown error') that is not a valid JSON object.
Исходный код
IWebDriver driver = new EdgeDriver();
driver.Navigate().GoToUrl("https://www.instagram.com");
IWebElement usernameInput = driver.FindElement(By.CssSelector("input[name='username']"));
IWebElement passwordInput = driver.FindElement(By.CssSelector("input[name='password']"));
usernameInput.SendKeys("YourUsername");
passwordInput.SendKeys("YourPassword");
Свойства используемых пакетов NuGet
Selenium.WebDriver.MSEdgeDriver
— Version 87.0.669
Selenium.WebDriver
— Version 4.0.0-alpha07
Ответ №1:
Какую версию браузера Edge вы используете? Вам нужно использовать ту же Selenium.WebDriver.MSEdgeDriver
версию, что и версия браузера Edge. Например, я использую Edge 87.0.664.47, тогда мне нужно использовать Selenium.WebDriver.MSEdgeDriver
— Version 87.0.664.47 .
Кроме того, вам нужно использовать эту строку в коде: edgeOptions.UseChromium = true
.
Вы можете попробовать следующий код, он может хорошо работать на моей стороне:
EdgeOptions edgeOptions = new EdgeOptions();
edgeOptions.UseChromium = true;
IWebDriver driver = new EdgeDriver(edgeOptions);
driver.Navigate().GoToUrl("https://www.instagram.com");
Thread.Sleep(3000);
IWebElement usernameInput = driver.FindElement(By.CssSelector("input[name='username']"));
IWebElement passwordInput = driver.FindElement(By.CssSelector("input[name='password']"));
usernameInput.SendKeys("YourUsername");
passwordInput.SendKeys("YourPassword");
Thread.Sleep(3000);
driver.Close();