写了一个给程序员用的自定义网络数据监控 Chrome 扩展 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
zhangbohun
V2EX    分享创造

写了一个给程序员用的自定义网络数据监控 Chrome 扩展

  •  
  •   zhangbohun 2020 年 2 月 23 日 5838 次点击
    这是一个创建于 2180 天前的主题,其中的信息可能已经有所发展或是发生改变。

    首先,简要的功能介绍:

    扩展提供了基础功能,任务配置管理,网络数据请求,Chrome 通知提醒,
    并实现了让监控什么网络数据,什么情况需要提醒、如何提醒等逻辑可以由用户自定义“配置”(当然最好最灵活的配置就是写代码了,所以才说这是一个给程序员用的扩展^_^)
    通过这个扩展用户可以监控任意网页或接口数据变更,实现如股价提醒,商品打折提醒,剧漫更新提醒,直播通知,新邮件提醒等等功能。

    安装下载: Chrome 商店链接 百度网盘链接

    下面是详细的有点自夸的说明:

    用户可以通过配置 jQueryajax 参数自定义网络请求,同时因为是 Chrome 扩展所以有一个优势,可以和普通网页共享同源的 cookies (简单的说就是只要在网站页面登陆了,扩展也可以请求到需要登陆才能访问的数据),这个特性基本就可以秒杀“随手写个脚本”了吧(注:本扩展无任何与具体监控任务无关的内置的发送请求代码,绝对不会有任何安全隐私问题)

    Chrome 商店里也有类似功能的扩展,不过都没有可以自定义请求的(都只提供了一个 url 地址配置),
    当然也更没有可以通过 Javascript 代码自定义数据处理逻辑的了(基本都只是通过选择器配置或正则定位一个 HTML 页面内的文本,发现不一样了就提醒,虽然很简单直观但不够灵活不够强大,当然用本扩展实现相同功能也十分简单的)

    并且配置代码里也支持使用 jQuery 库,所以你甚至还可以在这里通过如发送邮件API或者微信提醒API( Server 酱之类的)补充其他方式的提醒(但是请注意,千万不要用邮件提醒收到新邮件哦:)

    因为有了以上两个特性,所以才敢在扩展介绍里说可以通过这个扩展监控任意网页或接口数据变更实现诸多功能。


    有写这扩展的想法挺久了,春节在家终于动手完成,自己试用并优化了好久,绝对诚意之作。
    不过担心使用逻辑上可能自己有点陷进去了怕大家不太容易上手,
    这里再提供几个示例配置(可导入)供大家参考或直接使用:
    百度网盘链接

    第 1 条附言    2020 年 2 月 23 日

    顺便再附上本人做的另外几个 Chrome 扩展吧

    Tab Freezer: Chrome商店链接
    这个扩展是提供给海量标签页综合症 TMTS (Too Many Tabs Syndrome) 患者的(比如我自己),冻结页面节省内存(然后打开更多的标签,,大雾),相比于其他 OneTab 等扩展,有两个优点,1.标签不会关闭;2.点击即可生效,不会再弹出扩展弹框

    Volume Manager: Chrome商店链接
    这个扩展是用来控制页面内音频视频的音量的,应该是 Chrome 市场里最完善的一款音量控制扩展了。
    不仅支持 HTML5 标准的音频视频同时也支持 Flash,最关键的是可以记忆每个页面或者网站的音量修改配置。

    Regex Extracter: Chrome商店链接
    这个扩展的功能简单说就是用正则表达式查询当前网页内的文本,默认如果正则中有捕获就返回捕获部分的文本,
    支持文本、节点和源码三种模式,常用的场景比如:批量获取邮箱,批量获取图片链接,批量获取动漫电视剧每集的下载链接等

    第 2 条附言    2020 年 2 月 24 日

    还有一些 Tampermonkey 扩展用的的小脚本也贴一下链接分享给大家
    Greasy Fork链接
    都是些实用的页面优化调整,
    给百度首页添加日历添加 Bing 的每日壁纸,自动网易邮箱关闭广告便签,修改微信公众号页面Title,还有两个V站的优化脚本哦:)

    第 3 条附言    2020 年 4 月 6 日

    给 Web Data Monitor 做了一个使用说明的网页:https://zhangbohun.gitbook.io/web-data-monitor/

    11 条回复    2021-10-17 12:57:34 +08:00
    nyz1500
        1
    nyz1500  
       2020 年 2 月 23 日   1
    支持一个!

    在 macOS Chrome 试用了一下,请求测试的结果显示不完,也没法滚动,希望楼主有空可以改进一下~
    zhangbohun
        2
    zhangbohun  
    OP
       2020 年 2 月 23 日
    感谢建议,弹框用的默认的 alert (方便 JSON 格式化显示),请求到的结果如果是整个网页确实比较多,可以试试直接查看对应的页面的源代码,@nyz1500
    autoxbc
        3
    autoxbc  
       2020 年 2 月 23 日   1
    其实随手写个脚本也可以复用 cookie,比如 Tampermonkey 的 GM_xmlhttpRequest 函数
    csx163
        4
    csx163  
       2020 年 2 月 24 日   1
    支持一下, 确实没见到自定义的插件过
    zhangbohun
        5
    zhangbohun  
    OP
       2020 年 2 月 24 日   1
    @autoxbc 嗯好吧,我主要是想指 curl 或者 Python 之类的不依赖浏览器的脚本,Tampermonkey 的脚本确实很强大,我也简单写过一些,https://greasyfork.org/zh-CN/users/231964-zhangbohun
    enderftt
        6
    enderftt  
       2020 年 2 月 24 日   1
    先试试
    zhangbohun
        7
    zhangbohun  
    OP
       2020 年 2 月 24 日
    @enderftt 可以参考示例的几个配置脚本,有任何问题或建议欢迎反馈给我
    nba2k
        8
    nba2k  
       2020 年 3 月 23 日   1
    不会编程,装了又删了,应用商店好评的那个是我
    zhangbohun
        9
    zhangbohun  
    OP
       2020 年 3 月 24 日
    @nba2k 感谢好评,类似功能可以试试 Distill Web Monitor,这个扩展不需要编写 js 代码,不过能做到的功能相对简单一些
    win7pro
        10
    win7pro  
       2020 年 4 月 15 日   1
    mark,用过 Distill Web Monitor,但想用 webhook 提醒又不想开 pro,试试这个。
    sincerebrave
        11
    sincerebrave  
       2021 年 10 月 17 日
    开源吗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2072 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 13:50 PVG 21:50 LAX 05:50 JFK 08:50
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86