本文演示了如何使用 Python 的 pyautogui 模块实现鼠标的自动移动以及键盘的自行输入. 该模块不是 Python 自带的, 因此执行以下命令进行安装:
Python 通过屏幕的坐标系统对鼠标指针进行追踪与控制. 假设你的屏幕分辨率为 1920X1080, 那么屏幕的坐标系统看起来是这样的:
size(): 用于获取屏幕分辨率
这段 Python 代码调用了 size()
函数, 以 (x, y) 的格式输出屏幕分辨率:
moveTo(): 用于鼠标的移动
moveTo()
函数, 其接受 x, y 坐标作为参数, 还有一个可选的持续时间参数. 该函数将鼠标指针从当前位置移动到 (x, y) 坐标指定的位置, 移动花费的时间由持续时间参数指定. 保存并运行该 Python 脚本, 你将看到, 鼠标指针像被施了魔法一样, 从当前位置花 1 秒钟时间移动到坐标位置 (100, 100).moveRel(): 根据当前位置, 相对移动鼠标指针
position(): 获取当前鼠标指针的位置
click(): 用于控制鼠标点击和拖拽
有两个与鼠标拖拽操作相关的函数: dragTo
和 dragRel
. 它们的行为与 moveTo
和 moveRel
类似, 区别在于拖拽操作在移动的过程中, 会保持鼠标左键被按下.
该功能可用于不同的场景, 比如移动对话框, 或在 Windows 的画板程序中用铅笔工具自动绘图. 在画板程序中画一个正方形:
sleep()
函数, 为绘图预留了 10 秒钟时间).10 秒钟之后, 你将看到画板程序正在自动绘制一个正方形, 其左上角的顶点位于 (1000, 1000), 边长 100 个像素.
scroll(): 滚屏函数接受像素数作为参数, 并用给定的像素数向上滚屏
typewrite(): 用于自动键入字符串, 只需将要键入的字符串传递给函数作为参数即可
传递键名: 可以向 typywrite()
函数传入分离的键名.
热键组合: hotkey()
可以模拟组合热键, 比如: ctrl-c, ctrl-a 等:
英文原文:http://www.geeksforgeeks.org/mouse-keyboard-automation-using-python/
译者:kissg
联系客服