Запуск сценария Selenium только при наличии определенного элемента - PullRequest
1 голос
/ 13 февраля 2020

У меня есть оператор if else, вложенный в a для l oop, и я пытаюсь найти способ запустить программу только для текущей функции (u), если элемент существует. Рассматриваемый элемент является значением в формате выбора / опции. По сути, мне нужен определенный параметр в этом выпадающем меню, чтобы код мог работать, и если это не так, я бы хотел перейти к следующему URL и повторить попытку. Опция либо присутствует, либо ее нет (она не появится, если драйвер ждет).

for u in urls:
    bot.get(u)
    if *statement to check if the value exists*:
       -- runs my intended function --
    else:
        print("This site is not reporting yet")

Спасибо.

1 Ответ

1 голос
/ 13 февраля 2020

Вам необходимо l oop через urls и проверить, существует ли значение в блоке try-catch{}, и вы можете использовать следующее решение:

for u in urls:
    try:
        bot.get(u)
        #check if the value exists using WebDriverWait with expected_conditions as visibility_of_element_located
        #runs my intended function
    except TimeoutException as e:
        print("This site is not reporting yet")
        continue
...