首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
guyskk0x0
V2EX  ›  分享创造

蚁阅 - 让 RSS 更好用,轻松订阅你喜欢的博客和资讯

  •  1
     
  •   guyskk0x0 · 304 天前 · 6730 次点击
    这是一个创建于 304 天前的主题,其中的信息可能已经有所发展或是发生改变。

    作为一个 RSS 重度使用者,我订阅了几百个博客,十几个资讯和论坛网站,利用每天茶余饭后的时间看看资讯,不时也能看到各个博主发的好文章。之前我尝试过很多 RSS 阅读器,有的太复杂,有的阅读体验不好,有的不支持移动端,我甚至定制过一个开源的 RSS 阅读器,还是觉得不够好用。

    所以我用了半年时间,完成了蚁阅的第一版。自己也使用了将近一个月,可以满足日常使用需求了。 今天是第一次发布,欢迎大家体验和反馈意见!

    主要特点:

    • 为移动端优化,适合随时随地阅读
    • 非社交,无广告,无推荐,专注阅读
    • 按订阅更新频率区分消息,好文章慢慢看,读资讯一目十行
    • 输入博客地址,自动查找订阅
    • 导入浏览器书签(或任意含有大量博客链接的网页),可获得大量订阅
    • 智能图片代理,解决防盗链导致图片无法加载问题
    • 开源,源码和部署文档正在整理,稍后公布

    开箱即用地址: https://rss.anyant.com (建议用手机浏览器访问)

    第 1 条附言  ·  304 天前

    源码和部署文档如下:
    后端代码:https://gitee.com/anyant/rssant_v2
    前端代码:https://gitee.com/anyant/rssant-web
    部署文档:https://gitee.com/anyant/rssant_v2/wikis/pages/preview?sort_id=1483079&doc_id=301419

    建了一个微信群,欢迎加群交流报Bug:
    mmqrcode1559988989262.png

    附几张蚁阅的截图:
    Screenshot_2019-06-08-16-25-48-118_com.quark.browser.png Screenshot_2019-06-08-16-24-59-548_com.quark.browser.png Screenshot_2019-06-08-16-24-47-617_com.quark.browser.png Screenshot_2019-06-08-16-27-25-001_com.quark.browser.png

    75 条回复    2019-06-28 22:43:36 +08:00
    ningfeng
        1
    ningfeng   304 天前
    已添加的订阅,无法删除
    guyskk0x0
        2
    guyskk0x0   304 天前
    @ningfeng #1 可以删除的,在订阅详情页,右上角有个删除按钮
    ningfeng
        3
    ningfeng   304 天前
    @guyskk0x0 我的意思是种子好像无法删除
    loading
        4
    loading   304 天前 via Android
    看看。
    guyskk0x0
        5
    guyskk0x0   304 天前
    @ningfeng #3 是的,种子在 24 小时后会自动删除,目前无法手动删除
    cqcn1991
        6
    cqcn1991   304 天前 via Android
    厉害。。。。顶一个
    ningfeng
        7
    ningfeng   304 天前   ❤️ 1
    @guyskk0x0 我添加自己的博客订阅,有两篇文字在蘑菇里显示空白,2 篇显示正常。 你可以订阅测试下。https:_//ningfeng_im/
    loading
        8
    loading   304 天前 via Android   ❤️ 1
    只取标题?
    ningfeng
        9
    ningfeng   304 天前
    @loading 蘑菇里面取全文,菌圃里面只取标题。。。
    loading
        10
    loading   304 天前 via Android
    @ningfeng 不错,很赞。
    guyskk0x0
        11
    guyskk0x0   304 天前
    @ningfeng #9 我也许明白你的意思了,菌圃里面点击展开是只显示摘要的,点击右边的蓝色跳转按钮就是原文了
    ningfeng
        12
    ningfeng   304 天前   ❤️ 1
    @guyskk0x0 你没明白我的意思,我的意思是我博客里面不止有 4 篇文章,但是蘑菇里面只显示了 4 篇,而且这其中两篇还显示成了空白,另外两篇正常
    guyskk0x0
        13
    guyskk0x0   304 天前
    @ningfeng #12 感谢反馈。蘑菇里面只显示了 4 篇,这是因为蘑菇只取最近 2 周发布的文章,作为消息流。其中两篇还显示成了空白,这个确实是 bug,正文抽取有点问题。
    QianFengWuHen
        14
    QianFengWuHen   304 天前 via Android
    上架谷歌应用商店吗?
    guyskk0x0
        15
    guyskk0x0   304 天前 via Android
    @QianFengWuHen 目前是纯 web 应用,你是想打包成一个 app,上架应用商店吗?
    saintyy
        16
    saintyy   304 天前 via iPad
    支持一下 虽然我用习惯 Feedly 了😂
    chinesestudio
        17
    chinesestudio   304 天前 via Android
    希望活得九点
    omph
        18
    omph   304 天前
    微信公众号支持不?
    glouhao
        19
    glouhao   304 天前 via Android
    inoreader 可以看很多东西,就是普通人看不到的那种。
    zs8861
        20
    zs8861   304 天前
    不错,支持
    zs8861
        21
    zs8861   304 天前
    @glouhao #19 是的,需要科学才行
    glouhao
        22
    glouhao   304 天前 via Android
    @zs8861 不需要,inoreader 可以直接看。
    guyskk0x0
        23
    guyskk0x0   304 天前   ❤️ 1
    @loading @ningfeng 感谢二位反馈,"只取标题" 这是个 Bug,蘑菇或收藏中的文章,在菌圃中便会出现这个问题,现已修复。
    guyskk0x0
        24
    guyskk0x0   304 天前
    @chinesestudio #17 🤝感谢支持
    @omph #18 微信订阅号目前不支持,爬微信难度比较大,也有法律风险
    appstorereview
        25
    appstorereview   304 天前
    支持一下,虽然习惯用 Inoreader。
    Kilerd
        26
    Kilerd   304 天前
    可惜你不是用 react 写的,不然可以很快地通过 react-native 做成 app。

    RSS 这一块很久之前就实践过了,WEB 版本还是不太好用。而且你这个还是没有 PC web 的 UI。

    或者换个思路,优化一下,做成 PWA 也是一个不错的选择。
    guyskk0x0
        27
    guyskk0x0   304 天前
    @Kilerd 老朋友你换头像了!有考虑打包成 App,这样用户体验会好一些。cordova 貌似也能做,不知道实际效果如何。
    oppoic
        28
    oppoic   304 天前 via iPhone
    楼主考虑做个谷歌浏览器插件,用户群体更大。
    guyskk0x0
        29
    guyskk0x0   304 天前
    @oppoic 多谢反馈,会考虑进来
    Kilerd
        30
    Kilerd   304 天前   ❤️ 1
    @guyskk0x0 #27 可以先考虑做一下 PWA 的优化。
    我有一个 side project,用 React 写的,PWA 支持也就花了 2 天的时间,很快,但是提升的体验却很好。
    guyskk0x0
        31
    guyskk0x0   304 天前
    @Kilerd 好的,我尝试一下。你的 side project 是开源的吗,是的话我可以参考一下。
    Kilerd
        32
    Kilerd   304 天前
    @guyskk0x0 #31 没有耶,因为 devops 那一套流水线( CI 做自动编译,自动打包,自动发布)是几个项目公用的,所以没有开源,抱歉了。但是 PWA 的优化我也是跟着 google 官网来做的
    guyskk0x0
        33
    guyskk0x0   304 天前
    @Kilerd 好的,多谢!
    Kilerd
        34
    Kilerd   304 天前   ❤️ 1
    看了你的部署稳定,很多地方可以优化一下:

    - docker 打包应该可以交给 CI,或者写一个脚本自动 build 所有的 image
    - 不要用 run 的方式来启动每一个服务, 尝试用 stack,或者至少都要用 service,不然一旦崩掉了其中一个服务就完了。
    - 用 stack 的方式来部署,depends_on 的方式来解决启动顺序的问题,entrypoint.sh 来启动主程序和 db migration。
    - docker run 会暴露出数据库的端口,这是一个极其不安全的操作方法,用 stack + network 的方式来避免没必要的暴露 (我看了下 async api 和 api 也是不需要对外暴露的)
    Kilerd
        35
    Kilerd   304 天前   ❤️ 1
    其次,部署文档最后部署出来的内容是 http 服务,其实用了 docker,就应该善用 docker service dicovery 的优势,把 load balancer 也用 docker 来实现。

    推荐两个:

    - https://traefik.io/
    - https://github.com/buchdag/letsencrypt-nginx-proxy-companion-compose
    Kilerd
        36
    Kilerd   304 天前
    BTW,怎么还在用 requirements.txt 的方式来管理依赖(缺少 lock 文件,项目过几个月估计就跑不起来了)
    快换 pipenv 或者 poetry

    - pipenv: https://github.com/pypa/pipenv

    - poetry: https://github.com/sdispater/poetry (推荐)
    guyskk0x0
        37
    guyskk0x0   304 天前
    @Kilerd 赞同,目前的做法比较简单粗暴。CI 目前还没完善,没精力做。
    数据库端口绑定的 127.0.0.1,不会有问题。另外我用的阿里云 VPC 网络,安全组只开了 80 端口,其他端口外部都访问不了,API 端口主要是 admin 页面使用,我会本地挂 VPN 连上去访问。
    guyskk0x0
        38
    guyskk0x0   304 天前
    @Kilerd #36 pipenv 和 poetry 我都用过,感觉还是 requirements.txt 比较实用,我都是固定版本号(和 lock 文件一样的效果),不会有版本问题的。
    Kilerd
        39
    Kilerd   304 天前
    requirements.txt 的话,你要手动 freeze 依赖的依赖版本出来就没问题。
    如果只是加了一级依赖的版本号就可能出问题。

    我还是不喜欢这种手动 freeze 的方法,太原始了。
    Kilerd
        40
    Kilerd   304 天前   ❤️ 1
    建议:
    我试了下输入自己的博客,然后 crawler 去遍历我首页的每个 link,去看是不是 rss。

    其实可以先去跑几个比较常见的网页啊。

    - foo.com/rss
    - foo.com/atom

    没有再去尝试遍历
    guyskk0x0
        41
    guyskk0x0   304 天前
    @Kilerd 其实常见路径非常多,写法各异,所以默认是去首页找链接,大部分情况都有类似 <link rel="alternate" type="application/atom+xml" > 这样的标签,可以直接找到。这部分还可以再优化。
    Kilerd
        42
    Kilerd   304 天前
    @guyskk0x0 #41 我刚刚去看 rss specification 也看到了这点,看来是我的博客不规范,已经加入 issue 里面了
    lance6716
        43
    lance6716   304 天前 via Android   ❤️ 1
    无法从 XML 导入订阅,账号同名
    guyskk0x0
        44
    guyskk0x0   304 天前
    @lance6716 感谢反馈,我看到报错日志了,我会尽快修复。
    guyskk0x0
        45
    guyskk0x0   304 天前
    @lance6716 #43 导入 XML/OPML 问题已修复
    lance6716
        46
    lance6716   303 天前   ❤️ 1
    @guyskk0x0 后端返回 500
    guyskk0x0
        47
    guyskk0x0   303 天前
    @lance6716 感谢,再次(真的)已修复
    guyskk0x0
        48
    guyskk0x0   303 天前
    今天上午邮件账号被限制,导致邮件发送失败,注册和重置密码功能受影响。
    现已恢复,邮件发件地址改为了 [email protected]
    standin000
        49
    standin000   303 天前
    请教智能图片代理能获得公众号图片?
    guyskk0x0
        50
    guyskk0x0   303 天前
    @standin000 解析文章内容时,会尝试请求图片,如果收到 401,403 之类的状态码,就替换成代理图片地址。图片代理会在请求头中加上相应的 Referer 头,绕过防盗链机制。所以只要浏览器直接能访问的图片,通过智能图片代理也都能访问。
    stardust21
        51
    stardust21   302 天前   ❤️ 1
    可以弄一些推荐订阅的 RSS
    zsguy
        52
    zsguy   302 天前   ❤️ 1
    有没有清空订阅的选项,我导入了一下发现还是不合用,想清空了不让楼主的服务器继续拉取了,免得浪费效能,或者说如何销号
    guyskk0x0
        53
    guyskk0x0   302 天前 via Android
    @stardust21 感谢建议,我有空弄一个

    @zsguy 你的蚁阅用户名是什么?需要的话我帮你手动清一下
    zsguy
        54
    zsguy   302 天前
    @guyskk0x0

    用户名就 zsguy
    用的 GitHub 登录的,麻烦清空一下了,估计过段时间还会再回来看一下,到时候有自己清空功能就好了
    guyskk0x0
        55
    guyskk0x0   302 天前
    @zsguy 已清空
    molezz765
        56
    molezz765   301 天前   ❤️ 1
    web 轻量化, 打算从 inoreader 转过来了, 有没有类似首页全部的列表, 每次点下分类有点繁琐
    guyskk0x0
        57
    guyskk0x0   301 天前 via Android
    @molezz765 感谢反馈,我会考虑这个优化
    Pore
        58
    Pore   301 天前   ❤️ 1
    很好起 蘑菇 菌 fu 里面是啥 哈哈哈
    guyskk0x0
        59
    guyskk0x0   301 天前
    @Pore 哈哈,多添加几个订阅自然就明白啦

    > 其实是按订阅更新频率分为丛林,菌圃,沙漠。蘑菇=菌圃中两周内发布的文章组成消息流。
    abc1763613206
        60
    abc1763613206   300 天前 via Android   ❤️ 1
    把 FreshRSS 里导出的 OPML 再导入蚁阅就 500 了,是文件太大了吗
    guyskk0x0
        61
    guyskk0x0   300 天前
    @abc1763613206 非常感谢反馈,我通过报错日志发现是一个 Bug,正在修复。
    guyskk0x0
        62
    guyskk0x0   300 天前   ❤️ 1
    Spoter
        63
    Spoter   299 天前   ❤️ 1
    好,希望有 Mac 版本的
    abc1763613206
        64
    abc1763613206   299 天前   ❤️ 1
    @guyskk0x0 可以导入了,感谢
    jasonqiao36
        65
    jasonqiao36   299 天前   ❤️ 1
    没看懂,蘑菇,丛林,苗圃是什么意思
    guyskk0x0
        66
    guyskk0x0   299 天前 via Android
    @jasonqiao36 参考#59 楼
    googlefans
        67
    googlefans   295 天前   ❤️ 1
    做这个的初衷是啥 市面已经很多了
    Hater
        68
    Hater   293 天前 via iPhone   ❤️ 1
    在用蚁阅 但是刚刚进去 所有的图标没了…
    guyskk0x0
        69
    guyskk0x0   293 天前 via Android
    @Hater 是网络问题没加载出来吗?刷新之后有没有恢复?
    guyskk0x0
        70
    guyskk0x0   293 天前 via Android
    @googlefans 做一个好用的 RSS 阅读器,给自己用,顺便分享给别人用
    Hater
        71
    Hater   293 天前 via iPhone   ❤️ 1
    @guyskk0x0 #69 现在有了
    standin000
        72
    standin000   289 天前   ❤️ 1
    @guyskk0x0 尝试了订阅微信公众号文章,文章的图片还是不能显示了。请试试 https://qnmlgb.tech/authors/5ba5c06f244d4e5506b7335e 这个 rss
    guyskk0x0
        73
    guyskk0x0   289 天前
    @standin000 感谢反馈!原因是微信公众号的图片防盗链不返回 401,403 之类的错误码,而是返回 200 和一张防盗链提示图片,导致图片代理失效。现在问题已修复,新文章图片都已正常,较老的文章数据无法修复,因为重新请求 RSS 源已无法获取这些文章。
    standin000
        74
    standin000   284 天前   ❤️ 1
    @guyskk0x0 rss 新出来了, 但 https://rss.anyant.com/story/409m4178-6 这条仍然不能在蚁阅网页版看到图片,麻烦再查下
    guyskk0x0
        75
    guyskk0x0   284 天前
    @standin000 感谢反馈,有些微信图片确实加载不出来。通常图片 <img> 标签会有 src 属性,这样图片能直接显示,但有些微信公众号的图片没有 src 属性,而是有 data-src 属性,并通过 JS 动态添加的 src 属性。所以这个要特殊处理,等我修复了再通知你,需要一些时间。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1044 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:22 · PVG 06:22 · LAX 15:22 · JFK 18:22
    ♥ Do have faith in what you're doing.