Python Selenium ElementClickInterceptedException



在Selenium的帮助下,我已经尝试了几种方法来点击特定网站上的链接。所有这些都导致以下错误消息:

ElementClickInterceptedException:消息:元素点击被拦截:元素LMGP06050001在点(159364(不可点击。其他元素将收到点击:。。。(会话信息:chrome=89.0.4389.90(

我做错了什么?

目标是到达以下站点并从中获取一些数据:https://www.lipidmaps.org/data/LMSDRecord.php?LMID=LMGP06050001

到目前为止,在我的代码下面:

from time import sleep
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
PATH = "C:\Users\xxxxxx\anaconda3\chromedriver.exe"
browser = webdriver.Chrome(PATH)
browser.get("https://www.lipidmaps.org/data/structure/LMSDSearch.php?Mode=ProcessClassSearch&LMID=LMGP0605")
link = browser.find_element_by_link_text("LMGP06050001")
browser.implicitly_wait(5)
link.click()

您面临该问题的原因,因为出现了cookie弹出窗口,您需要首先接受cookie。

使用WebDriverWait((并等待element_to_be_clickle((

browser.get("https://www.lipidmaps.org/data/structure/LMSDSearch.php?Mode=ProcessClassSearch&LMID=LMGP0605")
#Accept to cookie
WebDriverWait(browser,20).until(EC.element_to_be_clickable((By.CSS_SELECTOR,"button#cookie_notice_accept"))).click()
WebDriverWait(browser,20).until(EC.element_to_be_clickable((By.LINK_TEXT,"LMGP06050001"))).click()

您需要导入以下库

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

相关内容

  • 没有找到相关文章

最新更新