selenium获取元素后用click()点击没有作用,用Keys.ENTER就可以成功,求解

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可以。
求大神指点。。。谢谢。。。

我来挖个坟哈 我看了一下网页源代码 发现click定位的位置好像是不对的,应该选择更内部的一个方块,总之我改成了以下内容就可以了。
driver.find_element_by_xpath("//*[@class='prefpanelgo']").click() #解决了

点击“保存设置”之后,跳出来一个小窗口“www.baidu.com says: 百度已经保存您的偏好设置”,要点一下“OK",不然无法跳到搜索页面。你看看是这个问题吗?

楼主这个解决了吗,我这几天也迷茫这个问题呢,一直找不到原因

是不是因为有滚动条,需要滚动到下面的页面才能点击到呢?