51Testing软件测试论坛

标题: selenium获取元素后用click()点击没有作用,用Keys.ENTER就可以成功,求解 [打印本页]

作者: 测试积点老人    时间: 2019-1-9 09:52
标题: selenium获取元素后用click()点击没有作用,用Keys.ENTER就可以成功,求解

selenium获取元素后用click()点击没有作用,用键盘输入enter(Keys.ENTER)就可以成功,请问是什么原因呢?求解

selenium脚本如下:

  1. #coding = utf-8
  2. from selenium import webdriver
  3. from selenium.webdriver.common.keys import Keys
  4. import os
  5. import time

  6. driver = webdriver.Firefox()
  7. driver.get("http://www.baidu.com")
  8. # 选择设置
  9. driver.find_element_by_xpath("//*[@id='u1']/a[8]").click()
  10. # 点击设置里的搜索设置
  11. driver.find_element_by_xpath("//*[@id='wrapper']/div[5]/a[1]").click()
  12. time.sleep(3)

  13. m = driver.find_element_by_xpath("//*[@id='nr']")
  14. m.find_element_by_xpath("//option[@value=50]").click()
  15. # 保存设置的信息
  16. driver.find_element_by_xpath("//*[@id='gxszButton']/a[1]").send_keys(Keys.ENTER)    #键盘输入enter
  17. # driver.find_element_by_xpath("//*[@id='gxszButton']/a[1]").click()   #用click()点__击
  18. time.sleep(3)
  19. driver.switch_to_alert().accept()
  20. driver.find_element_by_xpath("//input[@id='kw']").send_keys("selenium")
  21. driver.find_element_by_xpath("//input[@id='su']").click()
  22. time.sleep(30)
  23. driver.quit()
复制代码

实现的功能是在百度搜索设置里,设置每页显示条数。
自动执行已经实现,只是还有点困惑,为什么用click不行,而用enter可以。
求大神指点。。。谢谢。。。



作者: 海海豚    时间: 2019-1-10 10:05
看你的脚本里有click方法啊,不是自动执行已经实现了吗
作者: abcsell    时间: 2019-1-10 10:46
估计是获取的请求响应,外面不显示
作者: qqq911    时间: 2019-1-10 11:12
感觉没点到按钮时
作者: jingzizx    时间: 2019-1-10 12:33
要判断是否点击到了




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2