Selenium 单击在 Chrome 中不起作用

Selenium click not working in Chrome

我正在尝试点击 instagram 页面上显示登录的锚标签。这是我的代码。

browser = webdriver.Chrome()
browser.get('https://instagram.com')
login_elem = browser.findElement(By.xpath('//p/a[text() = "Log in"'))
login_elem.click()

浏览器打开,但未单击该元素。我已经尝试了各种其他 xpaths 并且 none 工作。 Here is the image for the Instagram source.

你可以使用下面的Xpath

.//*[@id='react-root']/section/main/article/div[2]/div[2]/p/a

或CSS选择器

.izU2O>a

或Link文本

Log in

试试这个代码:

element = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.PARTIAL_LINK_TEXT, "Log in")))
element.click()

这是我在我的本地系统上尝试过的并且有效

from selenium.webdriver.common.by import By
from selenium import webdriver
driver = webdriver.Chrome(executable_path="D:\cs\chromedriver.exe")
driver.get("https://www.instagram.com/")
a=driver.find_element(By.XPATH,'//a[text() = "Log in"]')
# added this step for compatibility of scrolling to the view
driver.execute_script("return arguments[0].scrollIntoView();", a)
a.click()

更正了 XPATH 和其他 changes.Please 注意可执行文件路径应替换为您的路径。