我孤身走在路上, 石子在雾中发亮,夜很安静,荒原面对太空,星星互诉衷肠
基于自动化的Python小实例
基于自动化的Python小实例

基于自动化的Python小实例

他可以让你摸鱼不用悄悄咪咪的的摸,而是直接跳进大海里明目张胆的摸,也可以让你日常工作时事倍功半,我们先来了解一下什么是pyautogui

pyautogui是由Al Sweigart于2010年创建的一个开源项目。Al Sweigart是一位Python编程教育家和作家,他创建了许多受欢迎的Python教程和著作。

pyautogui最初的灵感来自于一个名为”autopy”的库,但由于该库在某些平台上存在一些限制和问题,Al Sweigart决定创建一个新的库来解决这些问题,并为用户提供更好的自动化功能。

随着时间的推移,pyautogui逐渐发展壮大,并获得了广泛的用户群体。它在自动化测试、GUI测试、屏幕录制、自动化任务和游戏脚本等领域得到了广泛应用。

pyautogui提供了一系列功能强大的方法,可以模拟鼠标和键盘的操作,包括点击、移动、拖动、输入文本等。它还提供了一些辅助功能,如获取屏幕截图、查找图像、识别颜色等,使用户能够编写复杂的自动化脚本。

pyautogui是一个简单易用但功能强大的自动化库,为Python开发者提供了一种方便的方式来控制鼠标和键盘,实现各种自动化任务。

下面是一些DEMO示例:

1.实时显示鼠标的坐标

import pyautogui

# 实时显示鼠标位置
last_pos = pyautogui.position()
try:
    while True:
        new_pos = pyautogui.position()
        if last_pos != new_pos:
            print(new_pos)
            last_pos = new_pos
except KeyboardInterrupt as k:
    print(k)

2.获取屏幕的尺寸

size = pyautogui.size()
print(size)

3.移动鼠标到指定位置

# 把鼠标移动到(屏幕上10,10)的位置,周期2秒,若不设置周期,则为瞬间移动
pyautogui.moveTo(10, 10, duration=2)

3.移动鼠标到画面中央

# 把鼠标移动到画面中央,周期0.5秒
pyautogui.moveTo(size.width / 2, size.height / 2, duration=0.5)

4.移动鼠标到相对位置

# 移动到相对位置,在鼠标当前位置的基础上移动,X轴移动100个像素,Y轴不动,周期3秒,要输入0,不能是NONE,不然走不直
pyautogui.moveRel(300, 0, duration=3)

5.单击鼠标左键

import pyautogui

# 在当前鼠标位置单击左键
pyautogui.click()

6.单击鼠标右键

import pyautogui

# 在当前鼠标位置单击右键
pyautogui.click(button='right')

7.双击鼠标左键

import pyautogui

# 在当前鼠标位置双击左键
pyautogui.doubleClick()

8.按下键盘上的某个按键,比如A

import pyautogui

# 按下键盘上的字母'A'
pyautogui.press('A')

还可以使用pyautogui.keyDown()pyautogui.keyUp()方法来设置按下和放开键盘按键的时间间隔。在这个DEMO中,pyautogui.keyDown('A')表示按下键盘上的字母’A’,然后使用time.sleep()方法来设置按下的时间间隔,最后使用pyautogui.keyUp('A')表示放开键盘上的字母’A’,同样也使用time.sleep()方法来设置放开的时间间隔。

import pyautogui
import time

# 按下键盘上的字母'A',按下时间为1秒,放开时间为0.5秒
pyautogui.keyDown('A')
time.sleep(1)  # 等待1秒
pyautogui.keyUp('A')
time.sleep(0.5)  # 等待0.5秒

你甚至还可以截图后保存,然后根据图片上的内容来看屏幕上是否存在,如果存在就做些事情

# 先判断文件是否存在
exist = os.path.exists('4.png')
# 获取图片的位置
if exist == True:
    print("文件存在,开始干活")
    pos1 = pyautogui.locateCenterOnScreen('4.png', confidence=0.7) # 拿到图片的位置,结合前面的示例可以点击,可以实现按键

这个库还有许多的功能,可以去看看官方文档,熟悉了以后自己做一点挖矿和跑商什么的小脚本是没有问题的,这下你是不是就有动力学习了,哈哈哈哈?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

19 + = 24