关于python:Python监测监听屏幕界面内容变化并发送通知

6次阅读

共计 876 个字符,预计需要花费 3 分钟才能阅读完成。

需要

有时候须要实时监控屏幕上的信息是否发生变化,例如监控某个公众号是否发送了推送,可能是你重要的一个信息起源渠道,你心愿第一工夫留意到,抢热点等~ 那么能够应用 Python 编写这么一个脚本进行监控屏幕像素变动,只有像素发生变化,根本就是内容产生了变动。

实现原理

循环截图监测界面像素变动,像素发生变化就是界面发生变化。

代码

当像素发生变化,就会 POST 一个告诉到你的告诉 URL,这个时候你接管告诉的客户端就会给你发送揭示。

import time
import numpy as np
import requests
from PIL import ImageGrab

# 指定要监测的区域
monitor_area = (0, 0, 100, 100) # (左上角 x 坐标, 左上角 y 坐标, 右下角 x 坐标, 右下角 y 坐标)

# 初始截图
last_screen = np.array(ImageGrab.grab(monitor_area))

# 指定 HTTP 申请的 URL
url = "改成你的 POST 告诉的 URL,例如企业微信、Bark、钉钉、发送邮件等"

while True:
    # 捕捉以后屏幕截图
    current_screen = np.array(ImageGrab.grab(monitor_area))

    # 将上次截图和以后截图进行比拟
    difference = np.sum(np.abs(current_screen - last_screen))

    if difference > 0:
        # 发送 HTTP POST 申请
        data = {"timestamp": time.time(), "difference": difference}
        response = requests.post(url, data=data)
        print(response.text)

    # 更新上次截图
    last_screen = current_screen

    # 休眠一段时间,而后持续循环
    time.sleep(1)

接管告诉

我应用的是 IOS 的 Bark,间接将告诉 POST 到 APP 了:

这是比拟不便的一种形式,你也能够本人搭建邮件告诉服务、企业微信机器人、钉钉机器人等告诉服务进行接管告诉。

作者

TANKING

正文完
 0