捕获 WebDriverException
catching a WebDriverException
(Python)我试图在使用 Selenium chrome 驱动程序时捕获异常,但是,到目前为止,我一直无法捕获异常并提示 "Failed at this click!" 打印陈述。关于如何解决这个问题的任何建议(最初的问题是 .click() 因为我在一致性方面遇到了麻烦,但我认为此时捕获异常就足够了)。
以下异常:
File "/Users/J*****i/anaconda/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 194, in check_response
raise exception_class(message, screen, stacktrace)
WebDriverException: unknown error: Element is not clickable at point (145, 1818)
(Session info: chrome=64.0.3282.186)
(Driver info: chromedriver=2.31.488774 (7e15618d1bf16df8bf0ecf2914ed1964a387ba0b),platform=Mac OS X 10.10.5 x86_64)
代码如下:
URL2 = URL_in_2
driver = webdriver.Chrome('/Users/J******i/Desktop/chromedriver')
driver.get(URL2)
cookie_disclaimer = driver.find_element_by_xpath("//*[contains(text(), 'OK')]")
cookie_disclaimer.click()
try:
element = WebDriverWait(driver,10).until(
EC.presence_of_element_located((By.ID, "sub-navigation"))
)
except:
"Failed at this click!"
finally:
print("[D2] successful first click: " + str(element) + " found")
要捕获 click() 的异常,请将其保存在 try catch 块中。修改您的代码如下:
URL2 = URL_in_2
driver = webdriver.Chrome('/Users/J******i/Desktop/chromedriver')
driver.get(URL2)
try:
cookie_disclaimer = driver.find_element_by_xpath("//*[contains(text(), 'OK')]")
cookie_disclaimer.click()
element = WebDriverWait(driver,10).until(
EC.presence_of_element_located((By.ID, "sub-navigation"))
)
except:
"Failed at this click!"
finally:
print("[D2] successful first click: " + str(element) + " found")
或
不确定为什么在 click() 之后隐式等待元素存在,但在代码中,您在等待具有 id 'sub-navigation'
的元素存在时捕获任何异常
(Python)我试图在使用 Selenium chrome 驱动程序时捕获异常,但是,到目前为止,我一直无法捕获异常并提示 "Failed at this click!" 打印陈述。关于如何解决这个问题的任何建议(最初的问题是 .click() 因为我在一致性方面遇到了麻烦,但我认为此时捕获异常就足够了)。
以下异常:
File "/Users/J*****i/anaconda/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 194, in check_response
raise exception_class(message, screen, stacktrace)
WebDriverException: unknown error: Element is not clickable at point (145, 1818)
(Session info: chrome=64.0.3282.186)
(Driver info: chromedriver=2.31.488774 (7e15618d1bf16df8bf0ecf2914ed1964a387ba0b),platform=Mac OS X 10.10.5 x86_64)
代码如下:
URL2 = URL_in_2
driver = webdriver.Chrome('/Users/J******i/Desktop/chromedriver')
driver.get(URL2)
cookie_disclaimer = driver.find_element_by_xpath("//*[contains(text(), 'OK')]")
cookie_disclaimer.click()
try:
element = WebDriverWait(driver,10).until(
EC.presence_of_element_located((By.ID, "sub-navigation"))
)
except:
"Failed at this click!"
finally:
print("[D2] successful first click: " + str(element) + " found")
要捕获 click() 的异常,请将其保存在 try catch 块中。修改您的代码如下:
URL2 = URL_in_2
driver = webdriver.Chrome('/Users/J******i/Desktop/chromedriver')
driver.get(URL2)
try:
cookie_disclaimer = driver.find_element_by_xpath("//*[contains(text(), 'OK')]")
cookie_disclaimer.click()
element = WebDriverWait(driver,10).until(
EC.presence_of_element_located((By.ID, "sub-navigation"))
)
except:
"Failed at this click!"
finally:
print("[D2] successful first click: " + str(element) + " found")
或
不确定为什么在 click() 之后隐式等待元素存在,但在代码中,您在等待具有 id 'sub-navigation'
的元素存在时捕获任何异常