在自动化中用python实现键盘操作的方法详解


Posted in Python onJuly 19, 2019

原来在robotframework中使用press key方法进行键盘的操作,但是该方法需要写被操作对象的locator,不是很方便,现在找到了一种win32api库写键盘操作的一个方法(注意:此方法被操作界面必须在顶层),首先,需要安装win32api的python库,使用命令:

pip install pywin32

具体实现代码如下:

import win32api
import win32con

class MyLibrary(object):
  def keybd_event(self,VK_CODE): #VK_CODE为键盘编码
    # @Keyboard
    # input
    VK_CODE = int(VK_CODE)
    print ":::VK_CODE:", VK_CODE
    win32api.keybd_event(VK_CODE, 0, 0, 0)
    win32api.keybd_event(VK_CODE, 0, win32con.KEYEVENTF_KEYUP, 0)
    print ":::press", str(VK_CODE), "successfully!"
    time.sleep(2)

if __name__ == '__main__':
    keybd_event(40) #键盘按下方向向下键

常见键盘编码:(来自百度)

ESC键VK_ESCAPE (27)
回车键:VK_RETURN (13)
TAB键:VK_TAB (9)
Caps Lock键:VK_CAPITAL (20)
Shift键:VK_SHIFT (16)
Ctrl键:VK_CONTROL (17)
Alt键:VK_MENU (18)
空格键:VK_SPACE (32)
退格键:VK_BACK (8)
左徽标键:VK_LWIN (91)
右徽标键:VK_RWIN (92)
鼠标右键快捷键:VK_APPS (93)
Insert键:VK_INSERT (45)
Home键:VK_HOME (36)
Page Up:VK_PRIOR (33)
PageDown:VK_NEXT (34)
End键:VK_END (35)
Delete键:VK_DELETE (46)
方向键(←):VK_LEFT (37)
方向键(↑):VK_UP (38)
方向键(→):VK_RIGHT (39)
方向键(↓):VK_DOWN (40)
F1键:VK_F1 (112)
F2键:VK_F2 (113)
F3键:VK_F3 (114)
F4键:VK_F4 (115)
F5键:VK_F5 (116)
F6键:VK_F6 (117)
F7键:VK_F7 (118)
F8键:VK_F8 (119)
F9键:VK_F9 (120)
F10键:VK_F10 (121)
F11键:VK_F11 (122)
F12键:VK_F12 (123)
Num Lock键:VK_NUMLOCK (144)
小键盘0:VK_NUMPAD0 (96)
小键盘1:VK_NUMPAD1 (97)
小键盘2:VK_NUMPAD2 (98)
小键盘3:VK_NUMPAD3 (99)
小键盘4:VK_NUMPAD4 (100)
小键盘5:VK_NUMPAD5 (101)
小键盘6:VK_NUMPAD6 (102)
小键盘7:VK_NUMPAD7 (103)
小键盘8:VK_NUMPAD8 (104)
小键盘9:VK_NUMPAD9 (105)
小键盘。:VK_DECIMAL (110)
小键盘*:VK_MULTIPLY (106)
小键盘+:VK_ADD (107)
小键盘-:VK_SUBTRACT (109)
小键盘/:VK_DIVIDE (111)
Pause Break键:VK_PAUSE (19)
Scroll Lock键:VK_SCROLL (145)

以上这篇在自动化中用python实现键盘操作的方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中的迭代和可迭代对象代码示例
Dec 27 Python
Python数据分析之双色球中蓝红球分析统计示例
Feb 03 Python
对Python中实现两个数的值交换的集中方法详解
Jan 11 Python
使用Python快速制作可视化报表的方法
Feb 03 Python
django的auth认证,authenticate和装饰器功能详解
Jul 25 Python
对pytorch中的梯度更新方法详解
Aug 20 Python
tensorflow 重置/清除计算图的实现
Jan 19 Python
tensorflow 实现从checkpoint中获取graph信息
Feb 10 Python
Python远程方法调用实现过程解析
Jul 28 Python
python 两种方法修改文件的创建时间、修改时间、访问时间
Sep 26 Python
Python fileinput模块如何逐行读取多个文件
Oct 05 Python
一行代码python实现文件共享服务器
Apr 22 Python
Python的Tkinter点击按钮触发事件的例子
Jul 19 #Python
python实现图片九宫格分割
Mar 07 #Python
django最快程序开发流程详解
Jul 19 #Python
python打印9宫格、25宫格等奇数格 满足横竖斜相加和相等
Jul 19 #Python
Django REST framework 视图和路由详解
Jul 19 #Python
Django使用模板后无法找到静态资源文件问题解决
Jul 19 #Python
Django模板Templates使用方法详解
Jul 19 #Python
You might like
高分R级DC动画剧《哈莉·奎茵》第二季正式预告首发
2020/04/09 欧美动漫
用php实现批量查询清除一句话后门的代码
2008/01/20 PHP
PHP中文编码小技巧
2014/12/25 PHP
如何使用PHP对网站验证码进行破解
2015/09/17 PHP
对javascript的一点点认识总结《javascript高级程序设计》读书笔记
2011/11/30 Javascript
JS操作Cookies包括(读取添加与删除)
2012/12/26 Javascript
使用jQuery避免鼠标双击的解决方案
2013/08/21 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
javascript面向对象之共享成员属性与方法及prototype关键字用法
2015/01/13 Javascript
javascript小数精度丢失的完美解决方法
2016/05/31 Javascript
AngularJS基础 ng-list 指令详解及示例代码
2016/08/02 Javascript
JS实现屏蔽网页右键复制及ctrl+c复制的方法【2种方法】
2016/09/04 Javascript
详解如何使用webpack+es6开发angular1.x
2017/08/16 Javascript
Vue 菜单栏点击切换单个class(高亮)的方法
2018/08/22 Javascript
解决vue项目nginx部署到非根目录下刷新空白的问题
2018/09/27 Javascript
javascript实现拖拽碰撞检测
2020/03/12 Javascript
javascript中contains是否包含功能实现代码(扩展字符、数组、dom)
2020/04/07 Javascript
Vue router安装及使用方法解析
2020/12/02 Vue.js
[06:24]DOTA2亚洲邀请赛小组赛第三日 TOP10精彩集锦
2015/02/01 DOTA
[09:31]2016国际邀请赛中国区预选赛Yao赛后采访 答题送礼
2016/06/27 DOTA
python根据出生日期返回年龄的方法
2015/03/26 Python
Python的条件语句与运算符优先级详解
2015/10/13 Python
Python批量创建迅雷任务及创建多个文件
2016/02/13 Python
Python二叉搜索树与双向链表转换算法示例
2019/03/02 Python
Python XlsxWriter模块Chart类用法实例分析
2019/03/11 Python
Python定义函数功能与用法实例详解
2019/04/08 Python
使用python判断jpeg图片的完整性实例
2019/06/10 Python
Python彻底删除文件夹及其子文件方式
2019/12/23 Python
Python3如何在服务器打印资产信息
2020/08/27 Python
HTML5 Canvas画线技巧——实现绘制一个像素宽的细线
2013/08/02 HTML / CSS
全球最大的网上自行车商店:Chain Reaction Cycles
2016/12/02 全球购物
办公室经理岗位职责
2014/01/01 职场文书
车间主任岗位职责
2015/02/03 职场文书
项目经理助理岗位职责
2015/04/13 职场文书
Java spring单点登录系统
2021/09/04 Java/Android
Python实现简单的俄罗斯方块游戏
2021/09/25 Python