Я безуспешно пробовал все, что описано ниже, и Я получаю эту ошибку при запуске моего сценария, если ни один из XPath не найден.
Произошло исключение: NoSuchElementException Сообщение: такого элемента нет: невозможно найдите элемент:
XPath целевого элемента может быть любым из следующих, единственное отличие — это средний идентификатор деления (7 или 8).
Благодарен за вашу помощь и предложения,
Xpaths:
- < li>/div/div2/div1/div[7]/div2/span/div/span
- /div/div2/div1/div[8]/div2/span/div/ промежуток
Код: Выделить всё
if driver.find_element("xpath",'//*[@id="system"]/div/div[2]/div[1]/div[7]/div[2]/span/div/span'):
antivirus = driver.find_element("xpath",'//*[@id="system"]/div/div[2]/div[1]/div[7]/div[2]/span/div/span').text
else:
antivirus = driver.find_element("xpath",'//*[@id="system"]/div/div[2]/div[1]/div[8]/div[2]/span/div/span').text
Код: Выделить всё
try:
antivirus = driver.find_element("xpath",'//*[@id="system"]/div/div[2]/div[1]/div[7]/div[2]/span/div/span').text
except:
antivirus = driver.find_element("xpath",'//*[@id="system"]/div/div[2]/div[1]/div[8]/div[2]/span/div/span').text
Код: Выделить всё
if len(driver.find_element("xpath",'//*[@id="system"]/div/div[2]/div[1]/div[7]/div[2]/span/div/span')) > 0:
antivirus = driver.find_element("xpath",'//*[@id="system"]/div/div[2]/div[1]/div[7]/div[2]/span/div/span').text
else:
antivirus = driver.find_element("xpath",'//*[@id="system"]/div/div[2]/div[1]/div[8]/div[2]/span/div/span').text
- HTML-код до и после первого элемента:
- HTML-код до и после второго элемента:
Подробнее здесь: https://stackoverflow.com/questions/786 ... n-selenium