Добрый день, у меня такая проблема, я пишу на C# программу, работающую с Chrome. Но есть проблемы :
- Текст не копируется. Копируется только “NULL”
- Открывается новый браузер и только в нем все происходит. Можно ли как-то продолжить действия в уже открытом браузере? Может это работает через “driver.SwitchTo().Window(driver.WindowHandles.First());”?
var driver = new ChromeDriver(new ChromeOptions());
driver.Navigate().GoToUrl("https://www.google.com/");//НЕ СМОТРЯ НИ НА ЧТО ОТКРЫВАЕТ НОВЫЙ ХРОМ
driver.Manage().Window.Maximize();
driver.SwitchTo().Window(driver.WindowHandles.Last());
OpenNewTab();
driver.SwitchTo().Window(driver.WindowHandles.First());
driver.FindElement(By.ClassName("gsfi")).SendKeys("Selenium"); //Нахожу строку поиска Google и вписываю "Selenium"
string str = driver.FindElement(By.Name("q")).GetAttribute(Text); //str получает "null", хотя в строке записано "Selenium"
label1.Text = str; //Выводит НИЧЕГО(NULL)
Буду признателен за помощь)
Так, я Сделал метод, который открывает новую вкладку, но этот метод открывает сначала браузер Хром(ещё один), и только там потом открывает вторую вкладку
public static void OpenNewTab()
{
var driver = new ChromeDriver();
driver.ExecuteScript("window.open('about: blank', '_blank');");//РАБОТАЕТ, ОТКРЫВАЕТ НОВУЮ ВКЛАДКУ, ЕЕЕЕЕЕЕ
driver.SwitchTo().Window(driver.WindowHandles.First());
}