python selenium点击链接

时间:2016-10-31 15:59:39

标签: python selenium

因为我将我的firefox更新为49.02并将selenium更新为3.0.1,我之前登录我的bing account的代码无效。

Sign in中有www.bing.com个链接,我可以通过以下方式成功点击此链接:

driver.get("http://www.bing.com")
driver.implicitly_wait(20)
driver.find_element_by_link_text('Sign in').click()

但是,升级后,我收到一条奇怪的错误消息,其中根本不包含任何消息:

selenium.common.exceptions.ElementNotVisibleException: Message:

如果我只拨打driver.find_element_by_link_text('Sign in'),我将不会收到任何错误消息。这似乎是selenium可以成功找到这个链接,但不知怎的,它无法点击这个按钮。

我还试图找到Sign in class name或点击图标,但所有这些努力都没用。

我不知道该错误是否是由Microsoft阻止自动登录或我的代码中的错误引起的。帮助赞赏!

按照driver.find_element_by_xpath('//a[span = "Sign in"]').click()的建议调用alecxe仍然无法解决问题。

1 个答案:

答案 0 :(得分:2)

https://crackstation.net/hashing-security.htm,链接可点击

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

wait = WebDriverWait(driver, 10)
sign_in = wait.until(EC.element_to_be_clickable((By.LINK_TEXT, "Sign in")))
sign_in.click()