Python实现监控屏幕界面内容变化并发送通知
需求
有时候需要实时监控屏幕上的信息是否发生变化,例如监控某个公众号是否发送了推送,可能是你重要的一个信息来源渠道,你希望第一时间留意到,抢热点等~那么可以使用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了:
这是比较方便的一种方式,你也可以自己搭建邮件通知服务、企业微信机器人、钉钉机器人等通知服务进行接收通知。
到此这篇关于Python实现监控屏幕界面内容变化并发送通知的文章就介绍到这了,更多相关Python监控屏幕内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Python 中 Selenium 的 send_keys() 函数用法小结
send_keys() 是将数字、文本和符号等键盘输入发送到应用程序的文本框的过程, send_keys() 是 WebDriver 的一部分,每个键盘输入都会发送到此元素,这篇文章主要介绍了Python 中 Selenium 的 send_keys() 函数,需要的朋友可以参考下2023-11-11Macbook air m1安装python/anaconda全过程(图文)
这篇文章主要介绍了Macbook air m1安装python/anaconda全过程(图文),文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2021-03-03
最新评论