#python #selenium #xpath #staleelementreferenceexception
Вопрос:
Здравствуйте, я использую Selenium с python и получаю ошибку в названии, и я действительно не понимаю, почему.
Похоже, именно это и вызывает проблему:
down_arrow = driver.find_element_by_xpath('//*[@id="ember68"]/span')
#WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it((By.XPATH,'//*[@id="ember68"]/span')))
time.sleep(2)
down_arrow.click()
time.sleep(1)
Странно то, что страница действительно нажимает правую кнопку и открывается, но тогда остальная часть кода не запускается.
Кто-нибудь может помочь?
ОБНОВЛЕНИЕ: Я попытался down_arrow = WebDriverWait(driver, 10,ignored_exceptions=ignored_exceptions).until(EC.presence_of_element_located((By.XPATH, '//*[@id="ember68"]/span')))
и получил ту же ошибку из этой строки.
Хорошо, даже несмотря на то, что он выполняет строки, которые я написал выше, ошибку на самом деле можно отследить до тех строк, которые были до них:
search_query = driver.find_element_by_name('q')
for i in range(0, len(company_name)):
search_query.send_keys('"linkedin" AND ' '"{}"'.format(company_name[i]))
Я думаю, что это на самом деле то, что дает ошибку ^
Комментарии:
1. Можете ли вы попробовать поместить строку >>> » search_query = driver.find_element_by_name(‘q’) » >><< внутри цикла for ? Подобный этому:
2. для i в диапазоне(0, len(имя_компании)): запрос на поиск = драйвер.имя_элемента_б_(‘q’) запрос на поиск.ключи отправки («linkedin» И » «» {}»». формат(имя_компании[i]))
3. Кроме того, просто для уверенности, можете ли вы добавить строку ниже и рассказать нам, что произойдет, пожалуйста —>>> WebDriverWait(драйвер, 10).до тех пор, пока(EC.element_to_be_clickable(поисковый запрос))