python 操作鼠标和键盘

python 操作鼠标和键盘

1、PyMouse 模块

安装pymouse需要安装一些其他的包,否则运行时候会报错!

需要安装PyHook和PyUserinput
PyHook 目前还不支持 python3.8

PyHook 下载地址
https://pypi.org/project/PyHook3/#files

https://www.lfd.uci.edu/~gohlke/pythonlibs/
可以 Ctrl + F 输入 pyhook 搜索

下载后安装 , 输入 pip install 后可以将下载后的文件拖至 cmd 控制台自动生成文件路径

pip install 文件路径

安装完成 PyHook 后,安装 PyUserinput

pip install PyUserinput

最后安装 pymouse

pip install pymouse 
from pymouse import PyMouse

m = PyMouse()
a = m.position()    #获取当前坐标的位置

m.move(50, 200)   #鼠标移动到(50,200)位置

m.click(50, 50)  #在(50,50)位置左击

m.click(300, 300, 2) #在(300,300)位置右击

2、PyAutoGUI 模块

安装

pip install pyautogui

基本操作


import pyautogui

# 1、每个函数执行后停顿1.5秒
pyautogui.PAUSE = 1.5

# 2、鼠标移到左上角会触发 FailSafeException 异常,可以使用try except语句处理异常,或直接让脚本异常退出。
pyautogui.FAILSAFE = True

# 3、获取屏幕的分辨率
Width, Height = pyautogui.size()

# 4、获取鼠标当前位置,坐标系统中左上方是(0, 0)
mouseX, mouseY = pyautogui.position()

# 5、绝对位置移动
pyautogui.moveTo(300, 300, duration=0.2)
# duration 移动过程持续 0.2s 完成

# 6、相对位置移动
pyautogui.moveRel(100, 100, duration=0.2)

# 7、鼠标单击
pyautogui.click(500, 500, button='left')
# button 是要点击的按键,有三个可选值:‘left’, ‘middle’,  ‘right’, 默认'left'
# pyautogui.leftClick()  # 左击
# pyautogui.rightClick()  # 右击
# pyautogui.middleClick()  # 中击
# pyautogui.mouseDown(500, 500, button='left')  # 按下
# pyautogui.mouseUp(500, 500, button='left')  # 松开

# 8、鼠标双击
pyautogui.click(clicks=2, interval=0.25)
# interval 双击间隔时间
# pyautogui.doubleClick(500, 500, button='left')

# 9、绝对位置拖动
pyautogui.dragTo(0, 100, button='left', duration=5)
# 拖动的目标位置为 (0, 100)

#  10、相对位置拖动
pyautogui.dragRel(0, 100, button='left', duration=5)

# 11、滚轮
pyautogui.scroll(200)
# 接受一个整数,如果值为正往上滚,值为负往下滚

# 12、键盘按键
pyautogui.keyDown('enter')  # 按下回车键
pyautogui.keyUp('enter')  # 松开回车键
pyautogui.press('enter')  # 一次完整的点击回车键,前面两个函数的组合

# 输入字符串
pyautogui.typewrite('Hello world!', 0.2)
# 字符间延迟 0.2s

# 13、组合键
pyautogui.hotkey('ctrlleft', 'a')
# Ctrl + a

# 14、功能键输入
pyautogui.typewrite(['enter', 'shiftleft', 'w', 'o'], '0.25')
# 列表内键盘表以外的只能一个字符,键盘表字符必须在列表内,键盘表字符如下表
# 等价于下面的方式
pyautogui.press("enter")
pyautogui.press("shiftleft")
pyautogui.press(['w','o'])

PyAutoGUI键盘表

字符描叙
‘esc’Esc键
‘tab’、’\t’Tab键
‘enter’、’\n’Enter回车
‘‘capslock’’CapsLock键
‘backspace’、‘delete’Backspace、Delete 键
‘pageup’、‘pagedown’PgUp、PgDn 键
‘home’、‘end’、‘insert’Home、End、Insert 键
‘shiftleft’、‘shiftright’左右 Shift 键
‘altleft’、‘altright’左右 Alt 键
‘ctrlleft’、‘ctrlright’左右 Ctrl 键
‘up’、‘down’、‘left’、‘right’↑、↓、←、→ 箭头方向键
f1’、‘f2’、‘f3’….F1……、F12 键
‘winleft’Win 键

其它功能


# 1、截图和获取坐标点的像素
img = pyautogui.screenshot( region=(0, 0, 300 ,400) ) 
# 截图,截取坐标(0,0),宽300,高400的图片,参数省略则截取整个屏幕。

color = img.getpixel((100,100))
# 获取截图中(100,100)点坐标的像素,返回的是三原色值。

# 2、获取图片的位置
x,y,width,height =  pyautogui.locateOnScreen('a.png') 
# 参数图片文件的路径

# 3、获取图标的中心点
x, y = pyautogui.center((9,741,81,95))
# 图片的X轴,Y轴,宽,长

# 4、判断屏幕坐标的像素是不是等于某个值
pyautogui.pixelMatchesColor(50, 200, (30, 132, 153))

# 5、 如果你需要消息弹窗,通过单击OK暂停程序,或者向用户显示一些信息
pyautogui.alert('这个消息弹窗')  # 返回OK
pyautogui.confirm('这个选择弹框') # 返回OK 或 Cancel
pyautogui.prompt('这个消息弹窗是让用户输入字符串')  # 返回输入的字符串 或 None

更多参考:https://pyautogui.readthedocs.io/en/latest/

C# 操作键盘和鼠标:https://blog.youkuaiyun.com/weixin_42686768/article/details/105917029

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

share notes

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值