利用check酱监控网页并生成rss

<h2>背景</h2><p>最近发现了一个很好玩的开源项目:Check酱。</p><p>https://github.com/easychen/checkchan-dist</p><p>它可以通过保存cookie的方式,监控任意网页上任意元素的变化。然后通过使用Server酱或webhook的方式,对这些元素的变化进行时时提醒。</p><h2><i/>部署Check酱实时监控</h2><p>Check酱的本体是一个chrome插件,但如果只用插件的话,则只能在开机打开浏览器时进行监控。</p><p>好在官方提供了docker镜像,于是我首先使用Docker-compose的方式将其部署在我的服务器上。</p><p><b/></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-df5ce92fd7f819a2.jpeg" contenteditable="false" style="min-height:200px;min-width:200px;" img-data="{"format":"jpeg","size":27862,"height":513,"width":469}" class="uploaded-img" width="auto" height="auto"/>
</div><p/><p>于是,我用Check酱监控了b站up主的更新(主要是虽然b站有动态-投稿,可以只看关注的up主更新的视频,但等我发现这个功能时,我已经把2000个关注都点满了。。。),以及京东商品的价格,还有微信公众号的更新。
</p><p>这边借用官方的图:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-3287d03bf920935d.jpeg" contenteditable="false" style="min-height:200px;min-width:200px;" img-data="{"format":"jpeg","size":70919,"height":711,"width":1037}" class="uploaded-img" width="auto" height="auto"/>
</div><p/><p>然后配置Server酱,将监控信息发送到钉钉机器人通道: </p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-7423b6673b9ad553.jpeg" contenteditable="false" style="min-height:200px;min-width:200px;" img-data="{"format":"jpeg","size":76704,"height":953,"width":1070}" class="uploaded-img" width="auto" height="auto"/>
</div><p/><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-062389c81828b3d4.jpeg" contenteditable="false" img-data="{"format":"jpeg","size":146269,"height":2050,"width":2372}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p/><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-70c97ee5b304d153.jpeg" contenteditable="false" img-data="{"format":"jpeg","size":158164,"height":2248,"width":1080}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p/><p>现在看起来一切都很完美,但很快我就发现cookie是有时效的,所以我隔几天就要去登录一下。这样显然就麻烦了。</p><h2><i/>万物皆可Rss</h2><p>所以很快,我就发现了RssHub。</p><p>https://docs.rsshub.app/</p><p>https://github.com/DIYgod/RSSHub</p><p>它是一个由广大网友共同编写规则,从而可以将大多数你想要的东西(包括那些不支持rss的)都变成rss订阅源的工具。</p><p>所以,现在的思路就从直接监控网页,变成了监控rss的变化。(因为一般的rss阅读器提醒不是那么及时,并且我又喜欢把app都冰冻锁起来,所以我需要一个可以在聊天软件里提醒我的功能)</p><p>当然,由于一些不可说的原因,rsshub的官方站在大陆使用会有点不顺畅。不过好在这依然是个开源软件,所以我们继续用docker部署在服务器上:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-32f72ec16c74b46a.jpeg" contenteditable="false" img-data="{"format":"jpeg","size":41393,"height":689,"width":733}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>所以当前的架构就是这样:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-b683e2d98ddeceae.jpeg" img-data="{"format":"jpeg","size":14562,"height":391,"width":583}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>我把网页的变化点做成rss发布,然后使用Check酱去监控rss的变化,一旦有变化就会通过Server酱向我的钉钉推送提醒;同时,我使用The Old Reader去订阅并管理我感兴趣的Rss源,这样当我的钉钉接收到提醒时,我就可以用安卓的FeedMe或网页端去查看更新的内容了,并且已读的条目也会双向同步到The Old Reader。</p><p>完美。</p><p>但。。。我老婆又向我提出了一个新的需求:她也想要去查看更新。。。</p><p>这个需求的麻烦点在于,我不想让她的已读动作影响到我。看似用两个The Old Reader账号就能解决,但这样我就需要每次修改订阅都要在两个账号同步修改,太麻烦了。。。</p><h2><i/>将监控动态发布成Rss</h2><p>各种搜索解决方案,发现新版Check酱刚增加了一项功能,可以将监控的动态上传、发布成Rss。</p><p>简单说来就是:https://github.com/easychen/checkchan-dist/issues/39</p><p>当正常的php网站部署, 然后填上对应的rss_upload.php地址:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-27c35e6d4373ee1a.jpeg" img-data="{"format":"jpeg","size":19706,"height":269,"width":963}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>然后->“动态”, 点击"RSS“上传:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-3a6799b7b8cc69bc.jpeg" img-data="{"format":"jpeg","size":12819,"height":379,"width":531}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>最后打开https://example.com/rss.php 即可:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-0d5f05b52ebf25de.jpeg" img-data="{"format":"jpeg","size":51321,"height":306,"width":597}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>rss_upload.php:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-2bbcd54bff359300.jpeg" contenteditable="false" img-data="{"format":"jpeg","size":21725,"height":351,"width":448}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>rss.php:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-3e98ebdcef67f62b.jpeg" contenteditable="false" img-data="{"format":"jpeg","size":7986,"height":161,"width":462}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>利用这个功能,我就可以把Check酱监控的动态发布成Rss源,这样不论给多少人订阅都不会相互干扰了,而且监控的条目也方便管理,不用多次反复添加修改了。</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-2e02d9786a807bca.jpeg" img-data="{"format":"jpeg","size":18204,"height":560,"width":583}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>但是,大家肯定发现了一个问题,那就是Rss的上传是要手动触发的啊。那岂不是没有一点可用性?</p><p>幸好Check酱镜像支持了NoVNC,所以我通过NoVNC连接到服务器上部署的Check酱里,打开正在被自动化程序操控的浏览器,按F12进入开发者模式,在命令行中输入:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-c76129101c68011a.jpeg" contenteditable="false" img-data="{"format":"jpeg","size":20715,"height":82,"width":1344}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>这段js代码,就可以让浏览器每隔10分钟,自动去点击一下上传按钮。关闭NoVNC也可以生效。</p><p>这下就全流程自动化了。</p><p>这是在iPhone的ReadOn软件上的效果:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-2f8a63fd9d017e1f.jpeg" img-data="{"format":"jpeg","size":274698,"height":2208,"width":1242}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>这是在安卓的FeedMe软件上的效果:</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-446ce21fe7089fa4.jpeg" img-data="{"format":"jpeg","size":223773,"height":2248,"width":1080}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div>

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,546评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,224评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,911评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,737评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,753评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,598评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,338评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,249评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,696评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,888评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,013评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,731评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,348评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,929评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,048评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,203评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,960评论 2 355

推荐阅读更多精彩内容