Как я могу найти, существует ли элемент? - PullRequest
0 голосов
/ 02 февраля 2020

Как узнать, существует ли элемент перед использованием для атрибута или элемент имеет метку

def getidByLabel(self,driver,target_type,target_label,row_position):
    if target_type == 'form':
        attr_id = driver.find_element_by_xpath("//label[text()='" + target_label + "']").get_attribute("for")
        return attr_id
    elif target_type == 'table':
        attr_id = driver.find_elements_by_xpath("//label[text()='" + target_label + "']").__getitem__(row_position).get_attribute("for")
        return attr_id

1 Ответ

0 голосов
/ 02 февраля 2020

Вы можете проверить, возвращает ли find_elements что-нибудь

def getidByLabel(self,driver,target_type,target_label,row_position):
    elements = driver.find_elements_by_xpath("//label[text()='" + target_label + "']")
    if elements:
        if target_type == 'form':
            return elements[0].get_attribute("for")
        elif target_type == 'table':
            return elements[row_position].get_attribute("for")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...