Там вы увидите, что у него есть идентификатор того, что, как мне кажется, является окном поиска (показывает xpath, в который я копирую попробуйте найти его с помощью этого): //*[@id="sncwsgs-typeahead-input"]
Я пробовал такие вещи, как: var searchElement = driver.FindElement(By. Id("sncwsgs-typeahead-input"));
Есть идеи? Я уверен, что это вполне возможно, я просто очень плохо разбираюсь в селене и HTML, поэтому любой, кто тестировал это, работал и может знать какие-либо трюки, это было бы полезно прямо сейчас!
Я также попробовал этот полный xpath:
Код: Выделить всё
/html/body/macroponent-f51912f4c700201072b211d4d8c26010//div/sn-canvas-appshell-root/sn-canvas-appshell-layout/sn-polaris-layout//div[2]/div[2]/div[1]/sn-polaris-header//nav/div/div[3]/div[1]/div[1]/div/sn-search-input-wrapper//sn-component-workspace-global-search-typeahead//div/div/div/div/input
Здесь показано, что работает, а что нет:
Код: Выделить всё
var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(3));
var myElement = wait.Until(x => x.FindElement(By.CssSelector("macroponent-f51912f4c700201072b211d4d8c26010"))); // this works
var shadowRootElement = myElement.GetShadowRoot(); // no error from here
// this below does not work
//var myElement = wait.Until(x => x.FindElement(By.CssSelector("macroponent-f51912f4c700201072b211d4d8c26010 /deep/ dxcsnas-root")));
//var shadowRootElement = myElement.GetShadowRoot();
Если вы хотите увидеть весь сайт html:https://drive.google.com/file/d/1muvP1F ... VZ4lvGWGpp
Если это имеет значение, я пытаюсь использовать драйвер Chrome — некоторое время я видел проблему Вернемся к тому, что у других возникли проблемы с доступом к вещам внутри теневого домена на chromedriver после версии 2022 года - хотя я не знаю, имеет ли это какое-либо отношение к этому.
Было бы неплохо это сделать. правильный путь и научитесь тому, как вместо того, чтобы вручную перемещать мышь в нужное положение и щелкать по ней с помощью другого кода, отличного от селена!
Подробнее здесь: https://stackoverflow.com/questions/791 ... enter-text
Мобильная версия