欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
持续学习,不断总结,共同进步,为了踏实,做好当下事儿~
非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。 ✨✨ 欢迎订阅本专栏 ✨✨
The Start点点关注,收藏不迷路
|
在当今快节奏的数字化时代,自动化已成为提高工作效率的关键。Python凭借其简洁的语法和强大的库支持,成为自动化任务的首选语言之一。PyAutoGUI作为一款跨平台的GUI自动化库,允许开发者通过代码模拟鼠标移动、点击、键盘输入等操作,轻松实现重复性任务的自动化。本文将深入探讨PyAutoGUI的核心功能、实际应用场景以及最佳实践,帮助读者快速掌握这一强大工具。
pip install pyautogui
pip install pillow
)pip install opencv-python
)pyautogui.FAILSAFE = True # 鼠标移动到屏幕左上角(0,0)时触发异常
pyautogui.PAUSE = 0.5 # 每个动作间隔0.5秒
pyautogui.moveTo(100, 200, duration=1) # 1秒内移动到(100,200)
pyautogui.click() # 左键单击
pyautogui.doubleClick() # 左键双击
pyautogui.rightClick() # 右键单击
pyautogui.dragTo(300, 400, duration=1) # 拖拽到目标位置
pyautogui.dragRel(50, 0, duration=1) # 向右拖拽50像素
pyautogui.scroll(10) # 向上滚动10单位
pyautogui.scroll(-10) # 向下滚动10单位
pyautogui.typewrite("Hello World!", interval=0.1) # 每个字符间隔0.1秒
pyautogui.hotkey('ctrl', 'c') # 模拟Ctrl+C复制
pyautogui.press('enter') # 按下回车键
pyautogui.keyDown('shift') # 按住Shift
pyautogui.keyUp('shift') # 释放Shift
pyautogui.screenshot('screen.png') # 保存截图
button_pos = pyautogui.locateOnScreen('button.png') # 返回按钮坐标
color = pyautogui.pixel(100, 200) # 获取(100,200)的RGB值
# 自动点击弹窗的"确定"按钮
try:
button_pos = pyautogui.locateOnScreen('ok_button.png', confidence=0.8)
pyautogui.click(button_pos)
except:
print("按钮未找到")
from time import sleep
for _ in range(3): # 最多重试3次
if pos := pyautogui.locateOnScreen('icon.png'):
pyautogui.click(pos)
break
sleep(1)
import time
timeout = time.time() + 10 # 10秒超时
while time.time() < timeout:
if pos := pyautogui.locateOnScreen('target.png'):
break
# 仅截取屏幕左上角300x300区域
pyautogui.screenshot(region=(0, 0, 300, 300))
import threading
def auto_click():
pyautogui.click(100, 100)
threading.Thread(target=auto_click).start()
import openpyxl
wb = openpyxl.load_workbook('data.xlsx')
sheet = wb.active
for row in sheet.iter_rows(values_only=True):
pyautogui.click(500, 300) # 点击输入框
pyautogui.typewrite(row[0]) # 输入Excel第一列数据
pyautogui.press('tab') # 切换到下一个输入框
import os
for i, filename in enumerate(os.listdir('.')):
if filename.endswith('.jpg'):
pyautogui.click(filename) # 选中文件
pyautogui.press('f2') # 触发重命名
pyautogui.typewrite(f'image_{i}.jpg')
pyautogui.press('enter')
def test_login():
pyautogui.click(login_button_pos)
pyautogui.typewrite('admin')
pyautogui.press('tab')
pyautogui.typewrite('password123')
pyautogui.press('enter')
assert pyautogui.locateOnScreen('welcome.png')
print(pyautogui.position()) # 实时打印鼠标坐标
pyautogui.moveRel(50, 0) # 相对当前位置移动
screen_width, screen_height = pyautogui.size() # 获取总分辨率
系统偏好设置 > 安全性与隐私 > 辅助功能
中授权终端/IDE。scrot
:sudo apt-get install scrot
。道阻且长,行则将至,让我们一起加油吧!
The Start点点关注,收藏不迷路
|
tbody>