多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] **前言** 在前面的几篇中重点介绍了一些元素的到位方法,定位到元素后,接下来就是需要操作元素了。本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮)。 ## 一、简单操作 1. 点击(鼠标左键)页面按钮:click() 2. 请空输入框:clear() 3. 输入字符串:send\_keys() 4. 打开测试部落论坛后,点击放大镜搜索图标,一般为了保证输入的正确性,可以先清空下输入框,然后输入搜索关键字 ![](https://img.kancloud.cn/1a/47/1a47a275c9d540626bcaa69d9cfa6f7d_690x285.png) <br /> ## 二、submit提交表单 1. 在前面百度搜索案例中,输入关键字后,可以直接按回车键搜索,也可以点搜索按钮搜索。 2. submit()一般用于模拟回车键 ![](https://img.kancloud.cn/17/72/177268c951b99c770cfa236c72847986_690x307.png) 3. 但是论坛的搜索,如果用submit的话,会报错,可是又没有搜索点击按钮,怎么办呢? <br /> ## 三、键盘操作 1. selenium提供了一整套的模拟键盘操作事件,前面submit()方法如果不行的话,可以试试模拟键盘事件 2. 模拟键盘的操作需要先导入键盘模块:from selenium.webdriver.common.keys import Keys 3. 模拟enter键,可以用send\_keys(Keys.ENTER) ![](https://img.kancloud.cn/96/d2/96d2dd6c69dff36b72480e84b5b1c30d_690x354.png) 4. 其它常见的键盘操作: * 键盘F1到F12:send\_keys(Keys.F1) 把F1改成对应的快捷键 * 复制Ctrl+C:send\_keys(Keys.CONTROL,'c')  * 粘贴Ctrl+V:send\_keys(Keys.CONTROL,'v')  * 全选Ctrl+A:send\_keys(Keys.CONTROL,'a')  * 剪切Ctrl+X:send\_keys(Keys.CONTROL,'x')  * 制表键Tab:  send\_keys(Keys.TAB)  这里只是列了一些常用的,当然除了键盘事件,也有鼠标事件 <br /> ## 四、鼠标悬停事件 1. 鼠标不仅仅可以点击(click),鼠标还有其它的操作,如:鼠标悬停在某个元素上,鼠标右击,鼠标按住某个按钮拖到 2. 鼠标事件需要先导入模块:from selenium.webdriver.common.action\_chains import ActionChains * perform() 执行所有ActionChains中的行为 * move\_to\_element() 鼠标悬停 3. 这里以百度页面设置按钮为例 ![](https://img.kancloud.cn/aa/e8/aae89aa417407bac55bcbf8e9e173ac1_690x294.png) 4. 除了常用的鼠标悬停事件外,还有 右击鼠标:context\_click() 双击鼠标:double\_click() 依葫芦画瓢,替换上面案例中对应的鼠标事件就可以了 selenium提供了一整套完整的鼠标和键盘行为事件,功能还是蛮强大滴。下一篇介绍多窗口的情况下如何处理。