PyAutoGUI 库 怎么用
时间: 2025-07-09 07:47:26 浏览: 2
### PyAutoGUI 库简介
PyAutoGUI 是一个强大的 Python GUI 自动化库,能够模拟用户的鼠标和键盘操作[^1]。它可以广泛应用于自动化任务、UI 测试以及提高工作效率的场景中。
以下是关于如何使用 PyAutoGUI 的详细介绍及其常见应用场景:
---
### 安装 PyAutoGUI
要在项目中使用 PyAutoGUI,首先需要安装该库。可以在命令行中运行以下命令完成安装:
```bash
pip3 install pyautogui
```
如果遇到权限问题,可以尝试加上 `--user` 参数或者以管理员身份运行命令提示符。
---
### 基础功能介绍
#### 鼠标控制
PyAutoGUI 提供了多种方法来控制鼠标的移动、点击和拖拽等行为。
- **移动鼠标**
移动鼠标到指定位置 (x, y),单位为像素。
```python
import pyautogui
# 将鼠标移动到屏幕坐标 (100, 200)
pyautogui.moveTo(100, 200) # 立即移动
pyautogui.moveRel(50, 0) # 相对于当前位置向右移动 50 像素
```
- **鼠标点击**
模拟单击、双击或右键点击。
```python
# 左键单击
pyautogui.click()
# 右键单击
pyautogui.rightClick()
# 在特定位置双击
pyautogui.doubleClick(x=100, y=200)
```
- **拖拽操作**
实现拖拽效果。
```python
# 开始拖拽并释放
pyautogui.dragTo(300, 400, button='left')
pyautogui.dragRel(0, 50, duration=1) # 相对拖拽,持续时间为 1 秒
```
---
#### 键盘控制
除了鼠标外,PyAutoGUI 还支持模拟键盘输入。
- **按键按下/抬起**
控制单一按键的操作。
```python
pyautogui.keyDown('shift') # 按下 Shift 键
pyautogui.press('tab') # 按 Tab 键
pyautogui.keyUp('shift') # 抬起 Shift 键
```
- **组合快捷键**
支持复杂的快捷键组合。
```python
pyautogui.hotkey('ctrl', 'c') # Ctrl+C 组合键
pyautogui.hotkey('win', 'r') # Win+R 调出运行窗口
```
- **文本输入**
自动生成字符串输入。
```python
pyautogui.write('Hello, World!', interval=0.1) # 每字符间隔 0.1 秒
```
---
### 高级功能
#### 屏幕截图与图像识别
PyAutoGUI 不仅能截屏还能定位图片中的目标区域。
- **截取屏幕**
```python
screenshot = pyautogui.screenshot()
screenshot.save('screenshot.png') # 保存截图
```
- **查找图像位置**
如果希望自动找到某个图标的位置,则可利用此功能。
```python
location = pyautogui.locateOnScreen('button.png') # 查找按钮图片
center = pyautogui.center(location) # 获取中心点
pyautogui.click(center.x, center.y) # 点击该位置
```
#### 页面滑动
通过调整参数实现上下滚动页面的功能。
```python
pyautogui.scroll(-10) # 向下滑动 10 行
pyautogui.hscroll(5) # 向右水平滑动 5 步
```
---
### 示例代码
以下是一些综合性的例子展示如何结合以上特性完成实际工作流。
#### 示例 1: 文件复制粘贴
```python
import pyautogui
import time
def copy_paste():
pyautogui.hotkey('win', 'e') # 打开文件资源管理器
time.sleep(1)
pyautogui.typewrite(r'C:\test\file.txt') # 输入路径
pyautogui.press('enter') # 确认
pyautogui.hotkey('ctrl', 'a') # 全选
pyautogui.hotkey('ctrl', 'c') # 复制
time.sleep(1)
pyautogui.hotkey('alt', 'f4') # 关闭窗口
pyautogui.hotkey('win', 'd') # 返回桌面
pyautogui.hotkey('ctrl', 'v') # 粘贴至桌面
copy_paste()
```
#### 示例 2: 登录网站
```python
import pyautogui
import webbrowser
import time
webbrowser.open('https://example.com/login') # 打开登录页
time.sleep(5)
pyautogui.click(x=800, y=600) # 点击用户名框
pyautogui.write('[email protected]') # 输入用户名
pyautogui.press('tab') # 切换到密码框
pyautogui.write('password123') # 输入密码
pyautogui.press('enter') # 提交表单
```
---
### 注意事项
尽管 PyAutoGUI 功能强大,在开发过程中仍需注意一些细节以免造成意外后果。
- 设置失败安全机制:当出现问题时快速退出程序以防误操作损害系统。
```python
pyautogui.FAILSAFE = True
```
- 添加适当延迟时间以便观察动作流程是否正常。
```python
pyautogui.PAUSE = 1 # 默认每次调用之间暂停一秒
```
---
阅读全文
相关推荐


















