Как пропустить, если элемент не существует в Selenium - PullRequest
0 голосов
/ 30 января 2019

Я пытаюсь очистить названия ресторанов сайта доставки еды, и xpaths являются случайными числовыми значениями.Не все числа существуют, поэтому, когда он пытается определенное число для х, появляется ошибка.Вот некоторые из моих входных данных:

    restaurantname = ['//li[{}]/a/div[2]/h4'.format(x) for x in range(1, 999)]
    for restaurant in restaurantname[:999]:
        title = driver.find_element_by_xpath(restaurant).text
        print(title)
        print('*'*5)

Это выходные данные в моем терминале после запуска файла python:

Message: no such element: Unable to locate element: 
{"method":"xpath","selector":"//li[157]/a/div[2]/h4"}

Как мне сделать так, чтобы он просто пропускался, если есть "нет такого элемента? "

1 Ответ

0 голосов
/ 30 января 2019

Вы должны окружить свои find_element_by_xpath() и печатать операторы блоком try / кроме .Это позволит вам обработать ошибку с ключевым словом pass, что означает "ничего не делать".

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...