我得到一个" StaleElementReferenceException:消息:陈旧元素引用:元素未附加到页面文档"。我的代码如下。
browser = webdriver.Chrome()
browser.get('https://www.google.com/')
for i in range(searchrow, numrows):
wait = WebDriverWait(browser, 20)
inputGoogle=wait.until(EC.presence_of_element_located((By.NAME, "q")))
company = sheet.cell_value(i, 1)
inputGoogle.send_keys(company)
inputGoogle.submit()
wait = WebDriverWait(browser, 20)
wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR, "cite._Rm")))
domain = browser.find_element_by_css_selector("cite._Rm")
domain = domain.text
我试过这个相同的代码,除了试试/除外:
try:
wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR, "cite._Rm")))
domain = browser.find_element_by_css_selector("cite._Rm")
except: StaleElementReferenceException
continue
它没有解决我的问题。事实上,它只是吃了很多cpu,因为它只是等待和等待。
关于如何解决这个问题的任何想法?
答案 0 :(得分:0)
为什么不使用time.sleep
然后使用input = browser.find_element_by_id('q')