selenium.模拟键盘操作(Keys)
Keys源码:
NULL = '\ue000'CANCEL = '\ue001' # ^breakHELP = '\ue002'BACKSPACE = '\ue003'BACK_SPACE = BACKSPACE #删除键TAB = '\ue004' #TAB键CLEAR = '\ue005' RETURN = '\ue006'ENTER = '\ue007' #回车键SHIFT = '\ue008' #Shift键LEFT_SHIFT = SHIFTCONTROL = '\ue009'LEFT_CONTROL = CONTROL #Ctrl 键ALT = '\ue00a' #Alt 键LEFT_ALT = ALTPAUSE = '\ue00b'ESCAPE = '\ue00c' #ECS键SPACE = '\ue00d' #空格键 PAGE_UP = '\ue00e' #PgUp 键PAGE_DOWN = '\ue00f' #PgDwon 键END = '\ue010' #END 键HOME = '\ue011' #HOME 键LEFT = '\ue012' #左键ARROW_LEFT = LEFT UP = '\ue013' #上键ARROW_UP = UP RIGHT = '\ue014'ARROW_RIGHT = RIGHT #右键DOWN = '\ue015' #下键ARROW_DOWN = DOWN INSERT = '\ue016' #insert键 DELETE = '\ue017' #del键 SEMICOLON = '\ue018' #';'键EQUALS = '\ue019' #'='键 #数字键盘NUMPAD0 = '\ue01a' # number pad keysNUMPAD1 = '\ue01b'NUMPAD2 = '\ue01c'NUMPAD3 = '\ue01d'NUMPAD4 = '\ue01e'NUMPAD5 = '\ue01f'NUMPAD6 = '\ue020'NUMPAD7 = '\ue021'NUMPAD8 = '\ue022'NUMPAD9 = '\ue023'MULTIPLY = '\ue024' # '*' 键ADD = '\ue025' # '+' 键SEPARATOR = '\ue026' #','键SUBTRACT = '\ue027' # '-' 键DECIMAL = '\ue028' # '.'键DIVIDE = '\ue029' #'/'键 F1 = '\ue031' # function keysF2 = '\ue032'F3 = '\ue033'F4 = '\ue034'F5 = '\ue035'F6 = '\ue036'F7 = '\ue037'F8 = '\ue038'F9 = '\ue039'F10 = '\ue03a'F11 = '\ue03b'F12 = '\ue03c'META = '\ue03d'COMMAND = '\ue03d'
组合键:
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,'v') 粘贴(Ctrl+V) send_keys(Keys.CONTROL,'x') 剪切(Ctrl+X)
非组合键:
Keys.ENTER 回车键 Keys.BACK_SPACE 删除键 Keys.SPACE 空格键 Keys.TAB 制表键 Keys.ESCAPE 回退键 Keys.F5 刷新键
百度首页做个练习,效果如GIF:
from selenium.webdriver.common.action_chains import ActionChains from selenium.webdriver.common.keys import Keys from selenium import webdriver from time import sleepdriver = webdriver.Chrome() action = ActionChains(driver) driver.get('https://www.baidu.com')mov = driver.find_element_by_link_text('设置') action.move_to_element(mov).perform() sleep(1) action.move_to_element_with_offset(mov, 0, 60).click().perform()sleep(1) input01 = driver.find_element_by_xpath('//*[@id="adv_keyword"]') input02 = driver.find_element_by_xpath('//*[@id="adv-setting-2"]/input') input03 = driver.find_element_by_xpath('//*[@id="adv-setting-3"]/input') input04 = driver.find_element_by_xpath('//*[@id="advanced"]/div/form/div/table/tbody/tr[4]/td[2]/input')input01.send_keys("云想衣裳花想容") sleep(1) input01.send_keys(Keys.CONTROL, 'a') input01.send_keys(Keys.BACK_SPACE) sleep(1) input02.send_keys("云想衣裳花想容,春风拂槛露华浓。") sleep(1) input03.send_keys(Keys.TAB, "若非群玉山头见,会向瑶台月下逢。") sleep(1)driver.quit()
转载于:https://www.cnblogs.com/youngleesin/p/10452489.html
selenium.模拟键盘操作(Keys)相关推荐
- Selenium中级 | 在Selenium中模拟键盘操作
以下是基于Java语言在Selenium WebDriver中模拟键盘操作的一些常用方法总结 操作单个按键 比如按回车键.按F5进行页面刷新.按F11将窗口设为全屏模式等. 方式1:使用WebElem ...
- [139]python selenium之模拟键盘操作
selenium 提供了比较完整的键盘操作,在使用的模拟键盘操作之前需要我们导入from selenium.webdriver.common.keys import Keys即可,然后就可以来模拟键盘 ...
- 【Python自动化测试】:模拟键盘操作
在selenium中,把键盘的一系列按键封装在Keys类中,因此,我们在模拟键盘操作的时候,需要先导入Keys包,然后配合send_keys()方法使用 # 导入Keys类 from selenium ...
- Selenium基础 — 键盘操作
1.键盘时间介绍 我们在实际的测试工作中,有时候我们在测试时需要使用tab键将焦点转移到下一个元素,用于验证元素的排序是否正确. webdriver的Keys()类提供键盘上所有按键的操作,甚至可以模 ...
- 1121Selenium web自动化测试经验分享-模拟键盘操作的三种类;推荐使用PyUserInput模块
在Web自动化测试中,有时候会用键盘来输入内容,没那么常用,但分享下我爬的坑. 个人博客:https://blog.csdn.net/zyooooxie 第一个:keys模块 WebDriver中对键 ...
- selenium 模拟键盘事件 复制粘贴、右键、回车等
[selenium 模拟键盘事件 复制粘贴.右键.回车等] #coding=utf-8 ''' selenium ''' from selenium import webdriver as wd im ...
- C++模拟键盘操作窗口入门
C++模拟键盘操作窗口入门之文件监控操作句柄操作 #include <iostream> #include <windows.h> #include <tchar.h&g ...
- firefox下载文件弹出框之终极解决方案-vbs模拟键盘操作
firefox下载文件弹出框之终极解决方案-vbs模拟键盘操作 参考文章: (1)firefox下载文件弹出框之终极解决方案-vbs模拟键盘操作 (2)https://www.cnblogs.com/ ...
- C/C++ 模拟键盘操作(三)模拟鼠标输入
要想用好模拟键盘操作,那么模拟鼠标也是必不可少的 在Windows系统中提供了一个名为mouse_event的函数,有关这个函数的原型如下 VOID mouse_event(DWORD dwFlags ...
最新文章
- 从冬奥会开幕式谈起,AI的艺术造诣如何?
- Matlab心得及学习方法(不断更新)
- 电动力学每日一题 2021/10/10
- php中文网数据库的搭建,【后端开发】php数据库中文乱码
- VeeValidate在vue项目里表单校验应用案例
- jane street information session on pythonandocaml
- 深入理解javascript原型和闭包(7)——原型的灵活性
- 微服务怎么部署到服务器的_浅谈微服务部署方案
- Leetcode--1004. 最大连续1的个数Ⅲ
- java 数据库 事务 只读_不使用事务和使用只读事务的区别
- (十)DeepFaceLab:预包装的DIY深度伪造替代品
- Linux操作系统常用基本命令
- python应声虫程序_【Python】游戏-成语接龙
- ChinaPay银联电子支付-退款功能
- php的opendir,phpopendir函数与opendir语法
- 高性能的java的ip资源扫描和端口分析
- 多线程输出奇数和偶数
- 汪华:未来三年的移动互联网创业
- 等保2.0基本要求与等保1.0对比解读
- 我的职业是计算机英语,职业英语系列:计算机英语