@Beko96

(selenium) driver.find_element_by_xpath не находит нужный элемент что делать?

Откройте и посмотрите пожалуйста URL указанный в коде.

Вот код:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.headless = True

with webdriver.Chrome(executable_path=r'D:\chromedriver.exe', options=options) as driver:
    driver.get(
        url='https://www.sec.gov/ix?doc=/Archives/edgar/data/0000320193/000032019319000076/a10-qq320196292019.htm')

print(driver.find_element_by_xpath('//html/body/div[99]/span').text)


Хотя этот (//html/body/div[99]/span) xpath путь точно существует Selenium не находит его,
быть может что то динамический меняется на странице.
В общем как быть? Подскажите пожалуйста.
  • Вопрос задан
  • 113 просмотров
Пригласить эксперта
Ответы на вопрос 3
SoreMix
@SoreMix Куратор тега Python
yellow
Хотя этот (//html/body/div[99]/span) xpath путь точно существует

Почему так решили?
Давайте вместе попробуем перейти по этому пути.

html/body/div[99]/span

Открываем html/body
61de9c50bef3c168832644.jpeg

Открываем 99-й div
61de9cb490084202222069.jpeg
Но их всего 5. Так что не существует такого XPAth, создавайте новый, в хроме можно даже через райтклик скопировать Xpath
Ответ написан
Комментировать
@ab1
Возможно надо добавить time.sleep(10) после driver.get
Возможно там iframы есть
Ответ написан
Комментировать
@Beko96 Автор вопроса
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//html/body/div[99]"}
в общем все равно, так я попробовал sleep(10)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы