本文实例讲述了Python PyAutoGUI模块控制鼠标和键盘实现自动化任务。分享给大家供大家参考,具体如下:
PyAutoGUI是用Python写的一个模块,使用它可以控制鼠标和键盘。
利用它可以实现自动化任务,再也不用担心有重复枯燥的任务了。
pyautogui模块的功能:
移动鼠标、点击左右键和滚轮 发送虚拟按键# 安装pyautogui
这个模块支持Windows, Mac OS X 和 Linux。
根据系统不同,你可能需要安装一些依赖。
Linux系统(Debian系列):
$ sudo apt-get install python3-pip$ sudo pip3 install python3-xlib$ sudo apt-get install scrot$ sudo apt-get install python3-tk$ and sudo apt-get install python3-dev
Scrot是pyautogui使用的截图工具。
Mac OS X:
$ sudo pip3 install pyobjc-framework-Quartz$ sudo pip3 install pyobjc-core$ sudo pip3 install pyobjc$ sudo pip3 install pillow
OS X上的Python3可以通过brewhome或port安装。
Windows系统不用安装依赖。
安装完依赖之后,安装pyautogui:
$ sudo pip3 install pyautogui# Windowspip install pyautogui
导入模块测试:
import pyautogui
# 准备
Python移动鼠标、点击键盘非常快,有可以导致其他应用出现问题。如果出现了问题,而鼠标还一直瞎晃,在这种情况下,你很难点击窗口退出程序。
两种解决方法:
#1 pyautogui的暂停和Fail-Safe
你可以告诉你的Python脚本在每执行一个函数后暂停几秒钟,这样你就有了几秒种的控制权。
import pyautoguipyautogui.PAUSE = 1.5
fail-safe:当鼠标移动到屏幕的左上角时触法PyAutoGUI的FailSafeException异常。你可以使用try except语句处理异常,或直接让脚本异常退出。如果你想终止程序,只要你快速的把鼠标移动到屏幕左上角就可以了。
import pyautoguipyautogui.FAILSAFE = True
#2 注销系统
这个方法比较粗暴直接,不建议使用。Windows和Linux的快捷键是:Ctrl–Alt–Del;Mac OS X的快捷键是Command–Shift–Option-Q。
# 移动鼠标
PyAutoGUI使用x,y坐标,屏幕左上角坐标是(0, 0)。
1366×768分辨率:
使用pyautogui.size()
函数获得屏幕的分辨率:
import pyautoguipyautogui.size()# (1366, 768)width, height = pyautogui.size()
Ok,现在我们得到了屏幕的分辨率,下面我们来控制鼠标移动。
moveTo
函数,绝对坐标。(block.py):
import pyautoguifor i in range(10): pyautogui.moveTo(300, 300, duration=0.25) pyautogui.moveTo(400, 300, duration=0.25) pyautogui.moveTo(400, 400, duration=0.25) pyautogui.moveTo(300, 400, duration=0.25)
新闻热点
疑难解答