前言

在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了。本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件
有些web界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮)。

一、简单操作

1.点击(鼠标左键)页面按钮:click()

2.请空输入框:clear()

3.输入字符串:send_keys()

4.打开测试部落论坛后,点击放大镜搜索图标,一般为了保证输入的正确性,可以先清空下输入框,然后输入搜索关键字

 

二、submit提交表单

1.在前面百度搜索案例中,输入关键字后,可以直接按回车键搜索,也可以点搜索按钮搜索。

2.submit()一般用于模拟回车键

3.但是论坛的搜索,如果用submit的话,会报错,可是又没有搜索点击按钮,怎么办呢?

三、键盘操作

1.selenium提供了一整套的模拟键盘操作事件,前面submit()方法如果不行的话,可以试试模拟键盘事件

2.模拟键盘的操作需要先导入键盘模块:from selenium.webdriver.common.keys import Keys

3.模拟enter键,可以用send_keys(Keys.ENTER)

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)

这里只是列了一些常用的,当然除了键盘事件,也有鼠标事件

四、鼠标悬停事件

1.鼠标不仅仅可以点击(click),鼠标还有其它的操作,如:鼠标悬停在某个元素上,鼠标右击,鼠标按住某个按钮拖到

2.鼠标事件需要先导入模块:from selenium.webdriver.common.action_chains import ActionChains

perform() 执行所有ActionChains中的行为

move_to_element() 鼠标悬停

3.这里以百度页面设置按钮为例

4.除了常用的鼠标悬停事件外,还有

右击鼠标:context_click()

双击鼠标:double_click()

依葫芦画瓢,替换上面案例中对应的鼠标事件就可以了

selenium提供了一整套完整的鼠标和键盘行为事件,功能还是蛮强大滴。下一篇介绍多窗口的情况下如何处理。

Selenium2学习(八)-- 操作元素(键盘和鼠标事件)的更多相关文章

  1. Python3+Selenium3+webdriver学习笔记14(等待判断 鼠标事件 )

    !/usr/bin/env python -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记14(等待判断 鼠标事件 )'''from selenium im ...

  2. WPF之路-键盘与鼠标事件 - 简书

    原文:WPF之路-键盘与鼠标事件 - 简书 键盘事件 事件类型分为以下几个类型 生命周期事件:在元素加载与卸载的时候发生 鼠标事件:鼠标动作 键盘事件:键盘动作 手写笔事件:适用于win7以上的系统 ...

  3. winform中键盘和鼠标事件的捕捉和重写(转)

    在 编写winform应用程序时,有时需要无论在哪个控件获取焦点时,对某一个键盘输入或者鼠标事件都进行同样的操作.比如编写一个处理图片的应用程序时, 希望无论当前哪个控件获得焦点,当用户按上.下.左. ...

  4. winform中键盘和鼠标事件的捕捉和重写

    在编写winform应用程序时,有时需要无论在哪个控件获取焦点时,对某一个键盘输入或者鼠标事件都进行同样的操作.比如编写一个处理图片的应用程序时,希望无论当前哪个控件获得焦点,当用户按上.下.左.右键 ...

  5. cocos2d-x 键盘和鼠标事件

    出了菜单可以响应用户事件外,cocos2d中的层(Layer)也可以响应事件.层能够自动响应窗口事件,这些事件主要是键盘和鼠标事件,cocos2d中事件处理是通过Pyglet的事件处理完成的. 1.键 ...

  6. WPF嵌入Unity3D之后,unity3D程序的键盘和鼠标事件无法触发(3D程序的焦点无法激活)的解决方案

    目前最通用的客户端调用3D的方式,就是WPF程序通过Process启动Unity3D的exe进程,直接上代码: //开启3D进程 internal void Create3DProcess(strin ...

  7. Selenium2+python自动化12-操作元素(键盘和鼠标事件)

    前言 在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素 ...

  8. 自动化测试-8.selenium操作元素之键盘和鼠标事件

    前言 在前面的几篇中重点介绍了一些元素的定位方法,定位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素 ...

  9. Selenium2+python自动化12-操作元素(键盘和鼠标事件)【转载】

    前言 在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素 ...

随机推荐

  1. 【算法笔记】B1005 继续(3n+1)猜想+sort()用法

    1005 继续(3n+1)猜想 (25 分) 卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情况稍微有些复杂. 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程 ...

  2. LeetCode934.shortest bridge【dfs+bfs】

    一.题面 在给定的二维二进制数组 A 中,存在两座岛.(岛是由四面相连的 1 形成的一个最大组.) 现在,我们可以将 0 变为 1,以使两座岛连接起来,变成一座岛. 返回必须翻转的 0 的最小数目.( ...

  3. Qt随笔 - QSettings

    QSettings类提供了持久的跨平台应用程序设置. 嗯,一句话概括QSettings-- 创建 来看一下原型: QSettings::QSettings(const QString &org ...

  4. 异步的模块合并管理器-m3m4版本和jquery版本(原创)

    m3m4版本 (function(w){ var loading={} var models={} function define(name,args){ loading[name]=true mod ...

  5. 分享一个js方法

    这是一个关于参数合并的方法,这个场景也经常遇到,比如我们现在要对微信小程序的wx.request进行再一次封装,会涉及到一些默认的参数和每次使用自己传递的参数合并问题,分享代码. var extend ...

  6. Jenkins之构建邮件通知之插件Email Extension

    插件: 系统管理-->系统设置--> Extended E-mail Notificati 附上邮件内容: <!DOCTYPE html> <html> <h ...

  7. oracle 单实例DG(配置篇二)

    一,DG搭建实例--主库配置 one : 归档配置 01,查看归档  1 select log_mode,force_logging from v$database; 02,开启归档 关闭数据库重新启 ...

  8. 第十五章:集成JPUSH

    如果不想自己搭建push server,则可以借助于第三方的api来实现push的功能,本文主要介绍ionic如何集成jpush. 具体步骤如下: 创建ionic应用:ionic_jpush. 申请j ...

  9. TOJ 4393 Game

    描述 Bob always plays game with Alice.Today,they are playing a game on a tree.Alice has m1 stones,Bob ...

  10. Android中dip, dp, px,pt, sp之间的区别:

    Android中dip.dp.sp.pt和px的区别   1.概述 过去,程序员通常以像素为单位设计计算机用户界面.例如:图片大小为80×32像素.这样处理的问题在于,如果在一个每英寸点数(dpi)更 ...