Я пытался запустить следующий код в трех разных веб-ссылках. Код отлично работает на одной ссылке. Однако он выдает сообщение об ошибке «Сообщение: ссылка на устаревший элемент: элемент не прикреплен к документу страницы». Я просмотрел две предыдущие темы форума (исправление устаревшего элемента Python Selenium и Как перейти на новую веб-страницу в Selenium?) примерно то же самое сообщение об ошибке, но не удалось разобраться в проблеме. Вот мой код:
driver.get('https://github.com/avassalotti')
contributions = driver.find_elements_by_xpath(".//ul[@class='filter-list small']//li")
print(contributions)
for item in contributions:
print (item)
print(item.text)
item.click()
time.sleep(3)
contribution = driver.find_element_by_xpath(".//*[@class='f4 text-normal mb-2']").text
print(contribution)
Программа работает для этой ссылки (https://github.com/alex) и не работает для (https://github.com/agronholm, https://github.com/avassalotti).
Любые советы по устранению проблемы.
for item in driver.find_elements_by_xpath(".//ul[@class='filter-list small']//li")
, чтобы список обновлялся на каждой итерации. - person Andersson   schedule 29.08.2018driver.find_elements
каждый раз, он начинает выполняться в коллекции, которая была возвращенаdriver.find_elements
, поэтому она наверняка устареет . - person Rajagopalan   schedule 29.08.2018