前言:
模拟人为键盘输入,主要应用于测试,对于爬虫来说,访问到具有用户行为跟踪系统的网站,也可以使用该库进行模拟人为键盘输入
作者:Simon0903
链接:https://www.jianshu.com/u/2b4bc3b5e6fc
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
键盘操作
主要键盘功能是typewrite()。此函数将输入字符串中的字符。若要在按下每个字符键之间添加延迟间隔,请为interval关键字参数
import pyautogui as auto
消息框输入文字:
typewrite()
auto.typewrite('test',interval=0.25)
#参数interval是每个字符之间的停顿间隔,以秒为单位,
#另外,仅仅输入英文字母,输入类型必须是str(xxx)
#函数只能用于单个字符键,不能按SHITF和F1这些功能键。
模拟按下键盘功能键
press()
#auto.KEYBOARD_KEYS 来查看所有功能键键名
auto.perss('enter') 按下键盘的回车键
auto.press('f1') 按下键盘的F1
auto.press('left') 按下键盘上的左方向键左箭头
keyDown() 和 keyUp()
实际是press() 的拆分动作,按下按键和释放按键,如果要按住shift键,连按3下左方向键左箭头
auto.keyDown('shift') 按下shift不释放
auto.press('left') 一次左方向键左箭头
auto.press('left') 二次左方向键左箭头
auto.press('left') 三次左方向键左箭头
auto.keyUp('shift') 释放shift键
类似于typewrite()将字符串列表传递给press()。例如:
auto.press(['left','left','left']) # 键盘上三次点击左方向键左箭头
组合按键:
hotkey()可以传递几个键字符串,这些字符串将‘按顺序按下’,然后以‘反向顺序释放’。此代码:
auto.hotkey('ctrl','shift','esc')
相当于:
auto.keyDown('ctrl')
auto.keyDown('shift')
auto.keyDown('esc')
auto.keyUp('esc')
auto.keyUp('shift')
auto.keyUp('ctrl')
网友评论