selenium获取元素后用click()点击没有作用,用键盘输入enter(Keys.ENTER)就可以成功,请问是什么原因呢?求解 selenium脚本如下: - #coding = utf-8
- from selenium import webdriver
- from selenium.webdriver.common.keys import Keys
- import os
- import time
- driver = webdriver.Firefox()
- driver.get("http://www.baidu.com")
- # 选择设置
- driver.find_element_by_xpath("//*[@id='u1']/a[8]").click()
- # 点击设置里的搜索设置
- driver.find_element_by_xpath("//*[@id='wrapper']/div[5]/a[1]").click()
- time.sleep(3)
- m = driver.find_element_by_xpath("//*[@id='nr']")
- m.find_element_by_xpath("//option[@value=50]").click()
- # 保存设置的信息
- driver.find_element_by_xpath("//*[@id='gxszButton']/a[1]").send_keys(Keys.ENTER) #键盘输入enter
- # driver.find_element_by_xpath("//*[@id='gxszButton']/a[1]").click() #用click()点__击
- time.sleep(3)
- driver.switch_to_alert().accept()
- driver.find_element_by_xpath("//input[@id='kw']").send_keys("selenium")
- driver.find_element_by_xpath("//input[@id='su']").click()
- time.sleep(30)
- driver.quit()
复制代码实现的功能是在百度搜索设置里,设置每页显示条数。
自动执行已经实现,只是还有点困惑,为什么用click不行,而用enter可以。
求大神指点。。。谢谢。。。
|