[风 - RSS 订阅, 通知, 提醒] 为了满足我自己的订阅需求而开发的 RSS 阅读管理工具 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
gaozihang
V2EX    分享创造

[风 - RSS 订阅, 通知, 提醒] 为了满足我自己的订阅需求而开发的 RSS 阅读管理工具

  •  
  •   gaozihang 2024-04-15 10:11:14 +08:00 9785 次点击
    这是一个创建于 547 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我自己使用过很多 RSS 的订阅管理的工具,但是都无法满足我自己的一些需求,比如监听更新后的回调、自定义渲染的网页内容等等,于是就有了开发这个工具的想法。

    App Store

    目前主要支持的功能:

    • WebHook: 我经常需要对特定的 RSS 源进行更新监控,并在更新后执行一些后续处理。例如,当某个 UP 主发布新内容时,我希望我的 NAS 设备能自动下载这个视频。因此,我添加了一个 WebHook 回调功能。每次 RSS 源更新时,系统会通过回调一个 URL 地址来通知我。

    • 定制化的渲染: 我个人非常喜欢阅读评论(有时甚至比文章内容还精彩),但现有的 RSS 阅读器只能订阅并显示文章内容。因此,我设想了一个能从 RSS 源链接中抓取部分内容并渲染到阅读页面的自定义功能。这个功能的基本工作原理是通过 JS 脚本注册一个处理函数,该函数会自动通过正则表达式匹配 RSS 链接。一旦匹配成功,就会执行这个函数,并将返回的内容渲染到阅读页面上。

    • PUSH 通知: 许多现有的 RSS 阅读器通过本地定时任务进行内容更新,但由于 iOS 系统的限制,定时任务的执行可能会出现延迟,这导致我无法及时知道 RSS 的更新情况。因此,我考虑通过服务端定时任务来更新 RSS ,并通过 APNs 将更新消息推送到相应设备。这样的设计也导致这款软件需要用户登录才能使用(这可能是不好的点, 后续可能可以通过匿名账号的问题解决?)。

    以下是使用自定义 JS 脚本渲染后的文章示例,你可以看到 V2EX 的评论区是如何被渲染的:

    // 通过 $w.register 注册一个处理函数, 并返回一个 html $w.register('.v2ex.com/t/.*', async (link) => { try { const { data } = await $axios.get(link); const $ = await $cheerio.load(data); let html = ''; for (const el of $("div[id^='r_'].cell").toArray()) { const username = $(el).find('strong a').text(); const time = $(el).find('.ago').attr('title'); const cOntent= $(el).find('.reply_content').text(); const avatar = $(el).find('.avatar').attr('src'); html += ` <div style="margin-bottom: 15px;"> <div style="display: flex;"> <div style="border-radius: 20px; margin: 5px 10px 0 0;"> <img src="${avatar}" style="width: 35px; height: 35px;" alt="" /> </div> <div> <p style="font-weight: bold; font-size: 14px; margin: 0;">${username}</p> <p style="color: #999; font-size: 12px; margin: 0 0 5px 0;">${time}</p> </div> </div> <p style="margin: 0;">${content}</p> </div> `; } return html; } catch (e) { $alert(e); } }); 

    3 条回复    2024-04-15 17:36:27 +08:00
    Leeeeex
        1
    Leeeeex  
    PRO
       2024-04-15 15:59:22 +08:00
    试用了一下感觉挺不错的,提两个小建议
    可以增加详情页左右滑查看上一篇下一篇,现在还得退出才能看下一篇
    建议增加 opml 导入功能, 现在只能一个一个加,对于老用户迁移很不方便。
    gaozihang
        2
    gaozihang  
    OP
       2024-04-15 17:03:22 +08:00
    @chanChristin

    开发的时候想过怎么更便捷切换文章, 试了几种交互但是感觉体验都不是很好, 所有暂时就没加
    OPML 导入已经在我的支持列表里面啦, 应该可以在后面几个版本加上这个功能
    Leeeeex
        3
    Leeeeex  
    PRO
       2024-04-15 17:36:27 +08:00
    @gaozihang 评论区规则只能自己写吗?有没有一些通用的规则
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     984 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 22:40 PVG 06:40 LAX 15:40 JFK 18:40
    Do have faith in what you're doing.
    ubao 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