Python自动化测试系列[v1.0.0][PyUserInput模拟键盘]

PyUserInput安装

在Python3.7版本下安装PyUserInput需要先安装PyHook,用浏览器打开链接PyHook,这个页面里能找到很多Python的第三方扩展,读者朋友不妨保存起来。我们找到pyHook兼容Python3.7版本的链接,直接点击链接即可下载
然后启动命令行并将命令行引导到下的文件所在路径下,执行命令pip install pyHook-1.5.1-cp37-cp37m-win_amd64.whl,如下执行过程则表示安装成功。

C:\Users\Administrator\Downloads>pip install pyHook-1.5.1-cp37-cp37m-win_amd64.whl
Processing c:\users\administrator\downloads\pyhook-1.5.1-cp37-cp37m-win_amd64.whl
Installing collected packages: pyHook
Successfully installed pyHook-1.5.1

安装完pyHook后,便可以安装PyUserInput模块,继续在命令行执行pip install PyUserInput,如下所示则表示PyUserInput安装成功。

C:\Users\Administrator\Downloads>pip install PyUserInput
Collecting PyUserInput
Usingcachedhttps://files.pythonhosted.org/packages/d0/09/17fe0b16c7eeb52d6c14e904596ddde82503aeee268330120b595bf22d7b/PyUserInput-0.1.11.tar.gz
Requirement already satisfied: pyHook in c:\python37\lib\site-packages (from PyUserInput) (1.5.1)
Requirement already satisfied: pywin32 in c:\python37\lib\site-packages (from PyUserInput) (223)
Installing collected packages: PyUserInput
Running setup.py install for PyUserInput ... done
Successfully installed PyUserInput-0.1.11

模拟键盘

启动命令行工具,并进入到Python命令行,将pykeyboard类引入到环境中,然后调用PyKeyboard()函数,它返回键盘对象,将其赋值给pk

>>> import pykeyboard
>>> pk = pykeyboard.PyKeyboard()

当我们有了鼠标和键盘对象后,就可以模拟一些实际的鼠标键盘操作了,在键盘上敲字母”D”

pk.press_key('D')
pk.release_key('D')

我们看到敲击一个字母需要使用两个方法一个是press_key()另一个是release_key(),正如我们键盘上的操作按下按钮和松开按钮是一样,我们还可以使用一个方法tap_key()代替press_key()和release_key()

pk.tap_key('D')

同时tap_key()还支持在指定间隔时间情况的多次敲击,如下命令所示,其中10表示敲击键盘的次数,而1表示敲击间隔

pk.tap_key('D', 10, 1) 

并且还可以使用方法type_string()模拟敲击整个字符串

pk.type_string('__davieyang__')

接下来看一下如何完成组合键和功能键的模拟,如下命令行所示,敲击Ctrl+A。

pk.press_key(pk.control_key)
pk.tap_key(‘a’)
pk.release_key(pk.control_key)

敲击功能键F5

pk.tap_key(pk.function_keys[5])

敲击小键盘上的Home键

pk.tap_key(pk.numpad_keys['Home'])

敲击小键盘上的3,敲8次

pk.tap_key(pk.numpad_keys[3], n=8)

我们还可以使用press_keys()方法,然后传给他一个列表,完成组合键的敲击,如下代码所示,敲击键盘的Ctrl+A

pk.press_keys([pk.control_key,'a'])
发布了220 篇原创文章 · 获赞 186 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/dawei_yang000000/article/details/105648083