Python模拟键盘⿏标操作实战教程
在某些情况下,如果我们需要进⾏⾃动化操作的应⽤没有提供相应的接⼝,我们⽆法直接通过Python来调⽤API实现⾃动化。这种情况下,Python也不是完全没有办法的,我们可以采⽤模拟键盘和⿏标的⽅式实现⾃动化。
Python中模拟键盘和⿏标最著名的模块是:。⼀次安装两个模块⽐较⿇烦,⽽有⼀个库整合了这两个模块,⽽且能⽀持跨平台操作,这个库叫PyUserInput,通过就可以直接得到pymouse和pykeyboard。
1.准备
开始之前,你要确保Python和pip已经成功安装在电脑上噢,如果没有,请访问这篇⽂章: 进⾏安装。如果你⽤Python的⽬的是数据分析,可以直接安装Anaconda:
Windows环境下打开Cmd(开始—运⾏—CMD),苹果系统环境下请打开Terminal(command+空格输⼊Terminal),准备开始输⼊命令安装依赖。
当然,我更推荐⼤家⽤VSCode编辑器,把本⽂代码Copy下来,在编辑器下⽅的终端运⾏命令安装依赖模块,多舒服的⼀件事啊:
PyUserInput 在不同系统下的安装需要使⽤不同的依赖:
Linux - Xlib (python-xlib)
Mac - Quartz, AppKit
Windows - pywin32, pyHook
在终端输⼊以下命令安装我们所需要的依赖模块:
pip install PyUserInput
看到 Successfully installed xxx 则说明安装成功。Windows系统下如果出现如以下的红⾊字体提⽰则需要安装pyHook:
No matching distribution found for pyHook (from PyUserInput)
pyHook安装⽐较⿇烦,给⼤家讲⼀下,安装成功或者⾮Windows系统的同学可以跳过这⾥的讲解:
**2.**输⼊以下命令安装该whl⽂件:
pip install pyHook-1.5.1-cp36-cp36m-win_amd64.whl
⽂件需要在输⼊命令的当前⽂件夹下。
**3.**出现Successfully installed pyHook-1.5.1则说明安装成功。
安装pywin32的时候如果出现这样的错误(借他⼈图):
是因为你的Python没有被写⼊到注册表,需要将注册表写⼊Python,执⾏下⽅代码(可在Python实⽤宝典后台回复:注册表 获得)就可成功注册。
import sys
from winreg import *
# tweak as necessary
version = sys.version[:3]
under是什么意思英文installpath = sys.prefix
regpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" % (version)
installkey = "InstallPath"
pythonkey = "PythonPath"
pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" % (installpath, installpath, installpath)
def RegisterPy():
try:
reg = OpenKey(HKEY_CURRENT_USER, regpath)
except EnvironmentError as e:
try:
reg = CreateKey(HKEY_CURRENT_USER, regpath)
SetValue(reg, installkey, REG_SZ, installpath)
SetValue(reg, pythonkey, REG_SZ, pythonpath)
CloseKey(reg)
except:
print("*** Unable to register!")
return
print("--- Python", version, "is now registered!")
return
if (
QueryValue(reg, installkey) == installpath
and QueryValue(reg, pythonkey) == pythonpath
):
CloseKey(reg)
print("=== Python", version, "is already registered!")
return
CloseKey(reg)
print("*** Unable to register!")
print("*** You probably have another Python installation!")
if __name__ == "__main__":
RegisterPy()
注册完毕后就可以正常了,然后再重新 即可。macOS和Linux在安装的时候应该不会遇到太⼤问题,如果有遇到问题可以先搜索⼀下,⽹上解决⽅案都很全,或者在本⽂下⽅留⾔求解。
2.基本使⽤
pymouse模块相对简单,你只需要记以下⼏个函数即可满⾜基本的使⽤需求,如
1.⿏标移动:
# Python实⽤宝典
from pymouse import PyMouse
# 初始化⿏标对象
电脑python安装教程m = PyMouse()
# 移动⿏标到(x, y)绝对地址
中键滚动:
# Python实⽤宝典
from pymouse import PyMouse
# 初始化⿏标对象
m = PyMouse()
# 中键垂直滚动 10个单位
m.scroll(10, 0)
2.⿏标点击:
# Python实⽤宝典
from pymouse import PyMouse
# 初始化⿏标对象
m = PyMouse()
# ⿏标点击(500, 300), 第三个参数代表键位,1是左键,2是右键,3是中键m.click(500, 300, 1)
⿏标拖拽:
# Python实⽤宝典
from pymouse import PyMouse
# 初始化⿏标对象
m = PyMouse()
# ⿏标从当前位置拖拽到(500, 300)
m.drag(500, 300)
3.获得当前屏幕⼤⼩:
# Python实⽤宝典
from pymouse import PyMouse
# 初始化⿏标对象
m = PyMouse()
# 当前屏幕⼤⼩
m.screen_size()
4.获得⿏标当前位置:
# Python实⽤宝典
from pymouse import PyMouse
# 初始化⿏标对象
m = PyMouse()
# 当前位置
m.position()
只要记住以上4个⽅法,pymouse模块你就掌握了。接下来是⽐较复杂的pykeyboard模块:
1.键⼊字符串
# Python实⽤宝典
from pykeyboard import PyKeyboard
# 初始化键盘对象二进制八进制十进制十六进制提目
k = PyKeyboard()
# 键⼊Hello, World!
2.按下按键与释放按键
# Python实⽤宝典
from pykeyboard import PyKeyboard
# 初始化键盘对象
k = PyKeyboard()
# 按下H键
k.press_key('H')
ppt文本框背景颜怎么设置# 释放H键
# 你也可以使⽤tap_key函数直接实现按下和释放
常量元素的标准k.tap_key('H')
# ⽀持⾃定义按下次数和其间隔时间,单位:秒
k.tap_key('l',n=2,interval=5)
3.特殊按键的输⼊:
# Python实⽤宝典
from pykeyboard import PyKeyboard
# 初始化键盘对象
k = PyKeyboard()
# 按住alt键
k.press_key(k.alt_key)
# tab键
k.tap_key(k.tab_key)
# 释放alt键
# F5键
k.tap_key(k.function_keys[5])
# Home键
k.tap_key(k.numpad_keys['Home'])
# 按数字5三次
k.tap_key(k.numpad_keys[5], n=3)删除表的sql命令是什么
3.⼩练习
的收藏功能相当好⽤,我收藏了⼏百个链接和推送,但是官⽅却没有提供批量删除的功能。。这么明显的痛点都没有修复,也许这就是的“任性”吧,优秀。
没事,有了Python,我们完全可以⾃⼰⼲。开始之前,需要下载⼀个叫看⿏标的软件,查中某些组件所对应的当前屏幕的坐标(软件下载:)。
⽐如红点处位置为(574, 202). 所以为了实现批量删除,我们只需要从这个位置开始,右键删除,然后滚动相同宽度,重复这个操作即可。为了避免⽂章篇幅过长,这⾥留给⼤家做练习,我们在下篇推送中将详细解析做法,敬请期待。
我们的⽂章到此就结束啦,如果你喜欢我们今天的,请持续关注我们,如果对你有帮助,⿇烦在下⾯点⼀个赞/在看哦,有任何问题都可以在下⽅留⾔区留⾔,我们都会耐⼼解答的!
Python实⽤宝典
不只是⼀个宝典
欢迎关注:Python实⽤宝典
原⽂来⾃Python实⽤宝典:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论