前言
由于自己一直在用着yhy0师傅的github监控推送到钉钉群聊,每次只推送那些github相关和漏洞相关的感觉有点无趣,然后就萌生一个想法,编写一个RSS订阅推送的程序,用来推送相关安全社区以及安全公众号的文章更新,于是说做就做,熟练的打开自己的notepad++开始写py脚本了
(别问为什么不用专业的代码编写工具,我个人觉得取决于个人习惯吧,习惯记事本或者notepad++写脚本了,然后一步一步的print
0x02 编写思路
-
使用rss.yaml文件来存储RSS订阅地址和相关名称。
-
使用config.yaml来存储推送平台配置以及推送开关等信息
-
使用SQLite来存储推送过的文章名称,文章链接,以及文章推送的时间
-
在获取文章的时候,获取文章标题以及文章链接,使用文章链接进行重复检测,对比数据库中存在的链接。如果存在则不推送,如果不存在则记录入库进行推送
-
编写各平台(钉钉,飞书,Server酱,TG_Bot,Pushplus)推送函数,将获取到的文章按照对应rss订阅名称进行推送 比如:SeeBug 今日更新: 标题:********* 链接:*********** 推送时间:xxxx-xx-xx **:**:**
- 增加一个监控开启消息推送告知,方便看到程序是否正常运行
-
最后加个 banner,然后开始测试程序是否正常
特别感谢:
https://github.com/zhengjim/Chinese-Security-RSS 此项目作者
使用此项目获取到了众多安全社区以及个人博客和众多的安全公众号的订阅地址,虽然不认识这个项目的作者,在这里还是感谢这位大佬的项目
在此也特别感谢:程皮糖别皮师傅,对我的代码进行整理修复,解决了重复推送等相关问题。
0x03 安装与使用
1.先使用pip安装所需要用到的依赖裤
pip install -r requirements.txt
2.随后修改rss.yaml文件中所需要监控的订阅地址
3.以及修改config.yaml中的相关推送配置
4.最后直接运行Rss_monitor.py即可,运行效果图如下。
运行程序之后会生成articles.db数据库文件用来存储推送过的文章。
程序推送结果:
0x04 项目链接下载
1.关注公众号法克安全后台回复:安全社区监控,获取下载链接
2、或者前往https://www.github.com/Bugfor-Pings/Rss_monitor
原文始发于微信公众号(法克安全):一款自写RSS订阅多渠道推送程序
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论