需要
有时候须要实时监控屏幕上的信息是否发生变化,例如监控某个公众号是否发送了推送,可能是你重要的一个信息起源渠道,你心愿第一工夫留意到,抢热点等~那么能够应用Python编写这么一个脚本进行监控屏幕像素变动,只有像素发生变化,根本就是内容产生了变动。
实现原理
循环截图监测界面像素变动,像素发生变化就是界面发生变化。
代码
当像素发生变化,就会POST一个告诉到你的告诉URL,这个时候你接管告诉的客户端就会给你发送揭示。
import timeimport numpy as npimport requestsfrom PIL import ImageGrab# 指定要监测的区域monitor_area = (0, 0, 100, 100) # (左上角x坐标, 左上角y坐标, 右下角x坐标, 右下角y坐标)# 初始截图last_screen = np.array(ImageGrab.grab(monitor_area))# 指定HTTP申请的URLurl = "改成你的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