Selenium Chrome,Python。无法找到网站上的按钮

时间:2016-10-05 03:37:54

标签: python macos google-chrome selenium

我刚学习如何使用Webdriver,当我在Eventbrite网站上玩它时,它无法找到创建事件按钮(我可以点击它)。我尝试了许多不同的东西来找到像XPath,link_text,类这样的按钮,但它们没有用。这是我正在使用的代码:

    driver = self.driver
    driver.get("https://www.eventbrite.com/")
    driver.find_element_by_xpath("(//a[contains(text(),'Log in')])[2]").click()

    driver.find_element_by_id("login-email").clear()
    driver.find_element_by_id("login-email").send_keys("email")
    driver.find_element_by_id("login-password").clear()
    driver.find_element_by_id("login-password").send_keys("password")
    driver.find_element_by_id("remember_me").click()
    driver.find_element_by_xpath("//input[@value='Log in']").click()
    time.sleep(2)
    driver.find_element_by_link_text("Create Event").click()

有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

如果我正确理解您的问题,您示例的最后一行("Create Event")是不起作用的?我可以说,如果我使用css选择器,我可以单击该按钮。 (我也倾向于发现css选择器更容易使用)

driver = self.driver
driver.get("https://www.eventbrite.com/")
driver.find_element_by_xpath("(//a[contains(text(),'Log in')])[2]").click()

driver.find_element_by_id("login-email").clear()
driver.find_element_by_id("login-email").send_keys("email")
driver.find_element_by_id("login-password").clear()
driver.find_element_by_id("login-password").send_keys("password")
driver.find_element_by_id("remember_me").click()
driver.find_element_by_xpath("//input[@value='Log in']").click()
time.sleep(2)
driver.find_element_by_css_selector("div.l-mar-top-3 a.js-organizer-cta-btn").click()