码迷,mamicode.com
首页 > 其他好文 > 详细

3、操作元素:模拟键盘、鼠标事件

时间:2019-11-02 19:40:43      阅读:93      评论:0      收藏:0      [点我收藏+]

标签:ace   ack   import   with   ext   utf-8   rom   编码   space   

一、简单操作
1.点击(鼠标左键)页面按钮:click() 
2.清空输入框:clear()
3.输入字符串:send_keys()
4.send_keys()如果是収送中文的,前面需加 u,如:u"中文",因为这里是输入windows 系统,windows 系统是 GBK 编码,我们的脚本是 utf-8,需要转码为 Unicode 国际编码,返样才能识别到
技术图片
 
5、submit()模拟提交操作
技术图片

 

 

二、模拟鼠标操作
在 WebDriver 中, 将这些关于鼠标操作的方法封装在 ActionChains 类。ActionChains 类提供了鼠标操作的常用方法:

首先要引入包
from selenium.webdriver import ActionChains
ActionChains方法列表:

click(on_element=None) ——单击鼠标左键

context_click(on_element=None) ——点击鼠标右键

double_click(on_element=None) ——双击鼠标左键

drag_and_drop(source, target) ——拖拽到某个元素然后松开

move_to_element(to_element) ——鼠标移动到某个元素

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

技术图片

 

drag_and_drop_by_offset(source, xoffset, yoffset) ——拖拽到某个坐标然后松开

key_down(value, element=None) ——按下某个键盘上的键

key_up(value, element=None) ——松开某个键

click_and_hold(on_element=None) ——点击鼠标左键,不松开

move_by_offset(xoffset, yoffset) ——鼠标从当前位置移动到某个坐标

move_to_element_with_offset(to_element, xoffset, yoffset) ——移动到距某个元素(左上角坐标)多少距离的位置

release(on_element=None) ——在某个元素位置松开鼠标左键

send_keys(*keys_to_send) ——发送某个键到当前焦点的元素

send_keys_to_element(element, *keys_to_send) ——发送某个键到指定元素

 

三、模拟键盘操作
 
Keys类提供了几乎键盘上的所有按键的方法,我们可以用Keys来模拟键盘上的按键,或者组合键,如Ctrl + C、Ctrl + V等等
1、首先要导入keys模块
from selenium.webdriver.common.keys import Keys
2.常见的键盘操作:

send_keys(Keys.BACK_SPACE) #删除键(BackSpace)

send_keys(Keys.SPACE) #空格键(Space)

send_keys(Keys.TAB) #制表键(Tab)

send_keys(Keys.ESCAPE) #回退键(Esc)

send_keys(Keys.ENTER) #回车键(Enter)

send_keys(Keys.CONTROL,‘a’) #全选(Ctrl+A)

send_keys(Keys.CONTROL,‘c’) #复制(Ctrl+C)

send_keys(Keys.CONTROL,‘x’) #剪切(Ctrl+X)

send_keys(Keys.CONTROL,‘v’) #粘贴(Ctrl+V)

send_keys(Keys.F1) #键盘 F1

…… ......

send_keys(Keys.F12) #键盘 F12

技术图片

 

 

 

3、操作元素:模拟键盘、鼠标事件

标签:ace   ack   import   with   ext   utf-8   rom   编码   space   

原文地址:https://www.cnblogs.com/yhms/p/11783578.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!