Как использовать WebDriverWait вместе с find_element_by_xpath
Нашел вод такой пример
try:
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "myDynamicElement"))
)
finally:
driver.quit()
Подскажите как вместо поиска по id искать по заданному шаблону
element = driver.find_element_by_xpath("//select[@id='WPLANG']/option[@selected='selected']")
как то так что ли
try:
element = WebDriverWait(driver, 10).until(
EC.find_element_by_xpath("//select[@id='WPLANG']/option[@selected='selected']")
)
finally:
driver.quit()
Ответы (1 шт):
Неизвестно, что ты имеешь ввиду под описанием элемента,и как мы должны понять что ты имеешь ввиду,и у тебя немного не понятный и усложненный код,но вообще,чтобы найти элементы с помощью xpath, нужно в исследовании элемента скопировать путь нужного файла с помощью xpath , и вписать его значение,например:
browser = webdriver.Firefox() #ну или в твоем случае допустим хром
*нахождение, и копирование нужно элемента с помощью xpath*
browser.find_element_by_xpath('/html/body/div[3]/div[2]/div/div[1]/div[3]/div[1]/div[2]/div[3]/div[2]').click() # ну или нужное тебе действие
browser.implicitly_wait(3) #твое время в секундах
browser.find_element_by_xpath('/html/body/div[2]/div[3]/div/div[1]/div[2]/div[1]/div[2]/div[3]/div[2]').click() # ну или нужное тебе действие
А вообще команда browser.implicitly_wait используется только для открытия и прогрузки страницы,проще использовать в уже после полного запуска команду time.sleep (если хочешь выяснить твою проблему,и я не смог помочь, то попробуй почитать это руководство: https://habr.com/ru/post/250975/)