Selenium点击无法在Chrome中运行

时间:2018-06-06 03:34:52

标签: python google-chrome selenium instagram chrome-web-driver

我正在尝试点击Instagram页面上的锚标记,该标记表示登录。这是我的代码。

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

浏览器会打开,但不会点击该元素。我尝试过各种其他xpath,但都没有。 Here is the image for the Instagram source.

3 个答案:

答案 0 :(得分:0)

您可以在Xpath下面使用

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

或CSS Selector

.izU2O>a

或链接文字

Log in

答案 1 :(得分:0)

试试这段代码:

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

答案 2 :(得分:0)

这是我在我的本地系统上尝试过的,但它有效

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和其他更改。请注意可执行路径应替换为您的路径。