前面的例子中,点击事件都是通过点击()方法实现鼠标的点击事件。其实在WebDriver中,提供了许多鼠标操作的方法,这些操作方法都封装在ActionChains类中,包括鼠标右击,双击,悬停和鼠标拖动等功能。
ActionChains类提供的鼠标操作事件
-
<李> context_click():点击鼠标右键李>
<李> double_click():双击鼠标李>
<李> drag_and_drop():拖动鼠标李>
<李> move_to_element():鼠标悬停李>
鼠标悬停
页面上有些下拉菜单,在鼠标放到元素上以后,下面的菜单才会显示出来。下面的图片就是一个例子
百度首页上的设置项、下面的菜单默认不会显示,将鼠标停在上面后才会显示,这就是鼠标的悬停操作,菜单显示以后就可以对下面的项进行点击操作
进入搜索设置的代码
# - * -编码:utf - 8 - * 从硒进口webdriver 导入的时间 司机=webdriver.Chrome () driver.get (“http://www.baidu.com”) time . sleep (3) 设置=driver.find_element_by_link_text(“设置”) webdriver.ActionChains(司机).move_to_element(设置).perform () time . sleep (1) settings_search=driver.find_element_by_class_name (“setpref”) settings_search.click () time . sleep (3) driver.close ()
打开页面后,根据链接的文本信息找到设置项,使用ActionChains的move_to_element()方法将鼠标悬停在设置上,然后找到搜索设置项
鼠标的右击,双击和拖动事件都是通过上述的方法调用,只要将方法替换一下就可以了。拖动事件需要传入两个参数,第一个参数是拖动的起点元素,第二个参数是终点元素
webdriver.ActionChains(司机).context_click(右击的元素定位”).perform() #右击事件 webdriver.ActionChains(司机).double_click(“双击的元素定位”).perform() #双击事件 webdriver.ActionChains(司机)。drag_and_drop(“拖动的起点元素”,“拖动的终点元素”).perform() #拖动事件
<强>键盘事件强>
键类中提供了几乎所有的键盘事件,在鼠标事件中用到了两个键盘事件,键盘的向下按键(send_keys (Keys.DOWN))和键盘的回车事件(send_keys (Keys.ENTER)。键盘的事件需要导入键模块
从selenium.webdriver.common.keys导入密钥
所有的键盘事件都包含在这个模块中,send_keys用来模拟键盘输入,除此之外,还可以用例模拟键盘上的按键,不仅支持单个的键盘按键,还支持组合按键输入
# - * -编码:utf - 8 - * 从硒进口webdriver 导入的时间 司机=webdriver.Chrome () driver.get (“http://www.baidu.com”) time . sleep (3) driver.find_element_by_id(千瓦).send_keys(硒)#在搜索框中输入“硒” driver.find_element_by_id(千瓦).send_keys (Keys.SPACE) #输入空格键 driver.find_element_by_id(千瓦).send_keys (python) #在搜索框中输入“python” driver.find_element_by_id(千瓦).send_keys(钥匙。控制、a) #输入控制+模拟全选 driver.find_element_by_id(千瓦).send_keys(钥匙。控制、“c”) #输入控制+ c模拟复制 driver.find_element_by_id(千瓦).send_keys(钥匙。控制,“v”) #输入控制+ v模拟粘贴 driver.find_element_by_id(千瓦).send_keys (Keys.ENTER) #输入回车代替点击搜索按钮 time . sleep (3) driver.close ()
下面是一些常用的键盘事件:
——钥匙。BACK_SPACE:回退键(退格)
——钥匙。标签:制表键(选项卡)
——钥匙。输入:回车键(输入)
——钥匙。转变:大小写转换键(转变)
——钥匙。控制:控制键(Ctrl)
——钥匙。ALT: ALT键(ALT)
——钥匙。逃脱:返回键(Esc)
——钥匙。空间:空格键(空间)
——钥匙。PAGE_UP:翻页键上(页面)
——钥匙。PAGE_DOWN:翻页键下(下一页)
——钥匙。结束:行尾键(结束)
——钥匙。:行首键(家)
——钥匙。左:方向键左(左)
——钥匙。:方向键上()
——钥匙。右:方向键右(右)
——钥匙。:方向键下(下降)
——钥匙。插入:插入键(插入)