一文搞定RSS!从搭建、使用到自建订阅源。
写在前面
RSS的根本思想其实就是:把全部想看的信息聚合到一个平台上。
本文适合人群:(满足以下其一)
每天疲于辗转各个平台查看信息
希望自动获取自己关注的新信息(博主/公众号/up主等)
想要更快获取某项第一手消息(第一时间获取还请使用更专业的监控软件)
有个人vps,乐于折腾一些奇奇怪怪的事情
本文不适合人群:
坚定的豹子头,绝对不花一分钱
注意:只是本文不适合白嫖用户,毫无疑问,不付费也能把RSS用得很好。这里这样写原因很简单,市面上的rss平台,几乎都是付费,自建也需要有vps。此外,一些平台有严格的反爬措施,需要付费购买对应的服务。如果要长期使用下去,付费我认为是不可避免的,本文也不会教你如何去白嫖相关服务。
本文仅提供一种可以实现功能的方案,说是一文搞定RSS,但是如果你的需求和本文相差很大,那么可能需要自行更改部分步骤。如有其他比较好的方案欢迎讨论。
本文涉及大部分资源可从文末百度盘获取
尊重版权,引用请表明出处,如本文存在侵权行为,请立即通知作者
搭建
既然已经有了RSS需求,那么第一步必然是选择一个合适的RSS媒介。目前可选的媒介主要分为三种:商业网站、商业软件、自行搭建。
如果只是想付费就获得一个比较好的使用体验,那么我认为前两种比较适合。但是如果有更强的个性化和自定义功能,那么自行搭建比较适合你。本文更倾向于使用软件来解决问题,因此并未过多涉及商业网站服务。并且一些知名的服务国内都已经无法访问,故此处不再赘述。
商业软件
如果你使用RSS的平台限定在windows或macos,不追求跨平台功能,那么请直接使用irreader(有windows系统vps的也可以考虑):
不是广告,此软件作者本人买了三年的会员,虽然现在已经弃用,但是不可否认,此软件基本是一站式解决了RSS的所有问题。其独有的自建RSS订阅源功能简单好用,软件本身的推送做得也到位。可能唯一的缺点就是跨平台:不仅没有安卓端,而且不同windows之间的同步也做得很烂。
此外,因为irreader的推送做得很好,因此可以挂在windows系统的vps中,作为服务端,通过推送功能实现全平台同步。但是本文作者家境贫寒(vps要装windows基本要求2c4g),因此作罢。
自行搭建
目前可选择的软件有很多,此处挑选了主流的三款软件:tinytinyrss、freshrss、miniflux。首先不推荐tinytinyrss,主要有两个原因,一个是它虽然名字叫tinytinyrss,但是一点都不tiny;其次它对订阅源的要求令人费解,经常一言不合就订阅失败。剩下的两个各有优缺点。
miniflux的优点是不是用PHP写的、简洁、运行流畅、网页端体验就很好。但是有一个对很多人来说很致命的缺点,那就是不能手动给不同的订阅设置不同的更新时间。
freshrss的优点自然就是相对的,功能比miniflux强,可以给不同的订阅设置不同的更新时间,并且支持Xpath1.0的方式给不直接支持RSS的网站手动编写订阅。缺点自然就是运行效率不高。
在开始之前,请先准备好一台linux系统服务器。本文中,将以ubuntu系统演示搭建过程,为了简化操作,使用docker-compose方式。linux系统的远程链接、命令行控制、安装docker和docker-compose的具体教程网上资源很多,此处省略。
Miniflux搭建
创建一个新文件夹并进入:
在你的电脑上新建一个文本文档,编写docker-compose配置文件:(可在文末百度盘下载)
将文件及后缀名改为:docker-compose.yml。使用宝塔面板等方式,找到之前新建的文件夹(路径可能为:/root/miniflux),将docker-compose配置文件(docker-compose.yml)复制进去。
在之前新建并进入的文件夹里运行:
看到网络创建、miniflux本体以及数据库创建,即为成功。

如果想要更改配置,则先cd进文件夹中:
根据不同服务商的方式,放行对应端口。之后,进入http://你的ip:你的端口/,如果成功,就能成功显示miniflux界面。
Freshrss搭建
开始的步骤类似,但在这里注意,根据freshrss官网的建议,我们分成三个,分别为:docker-compose.yml、docker-compose-db.yml、docker-compose-local.yml。(可在文末百度盘下载)
docker-compose.yml:
docker-compose-db.yml:
docker-compose-local.yml:
复制到对应路径后:
根据不同服务商的方式,放行对应端口。之后,进入http://你的ip:你的端口/,如果成功,就能成功显示freshrss初次引导界面,跟随引导即可。
此外,关于反代及域名访问还请自行探索。
使用
服务端设置
安装好了服务端,第一件事当然是配置服务端。此处以miniflux做主要讲解。
miniflux:进入设置,根据自身需求修改语言和时区。

没错,这就完了。miniflux的主要设置在docker配置文件中都进行了设置,此处无法修改(修改方法见前文),这点喜欢的人说他简洁,不喜欢的人说他简陋。本文作者认为这是可以接受的。
常规的添加订阅源此处不细讲。
freshrss的使用xpath自定义订阅源是特色功能,理论上所有网页都可以通过此方法创建订阅源,然而由于编写需要一定门槛,且后文有更好的解决方式,此处仅贴上其他大神的实践过程,如果你有兴趣,可以自行研究:
客户端
windows
推荐使用Fluent Reader,原生支持minifluxapi(不要使用miniflux的fever api费二遍手续体验也不好),如果使用FreshRSS,可以使用GReader api。官网:(可在文末百度盘下载)
以miniflux为例,操作也非常简单。
进入你的miniflux网页端,点击设置-API密钥,即可看到

此处有两种登录方式,用户名密码登录以及密钥登录,点击下面的创建一个新的密钥,即可获得如图所示密钥。
下面红框中的API Endpoint后面是你的地址,localhost代表你的ip及端口号,所以需要将:http://你的ip:你的端口/v1/ 填写到fluent中。
打开fluent,点击右上角齿轮进入设置-服务,选择miniflux。

之后如图填写后点击确认即可。

安卓
支持FreshRSS、ttrss等软件的安装端比较好找,miniflux就不好找了。上文提到的fluent reader也有安卓端,但是只支持fever api,fever api缺点众多,几乎是不能日常使用。正当我苦苦寻觅的时候,猛然间看到一个支持miniflux的阅读器,它的名字就叫“新闻”。在我一段时间的日常使用后,没有发现其明显缺点,功能虽然少,但是我想要的基本都有了。github地址:(可在文末百度盘下载)
具体的配置方法按照软件引导即可,此处不再赘述。如果有其他支持miniflux api和GReader api的安卓应用,欢迎推荐。
macos\ios
这两个系统本文作者使用较少,仅推荐:reeder 5。
RSS源获取——自建订阅源
常规RSS订阅链接可以在支持RSS的网页中获得,以及使用一些RSS嗅探辅助。此处主要说明不提供RSS订阅链接网站的RSS链接创建。
主流网站创建RSS——RSSHub
RSSHub是一个RSS生成器,它有一个服务端,有各路大神根据不同网站编写的不同订阅规则,在不同网站上根据这些规则,生成相应的订阅源。
辅助RSSHub使用的是RSSHub Radar。它是一款浏览器插件,可应用于Chrome等谷歌内核浏览器以及火狐浏览器中,在对应的插件商店中可以找到。用户在使用时,如果在支持的网站上,打开此插件,即可获得该网站提供的RSS订阅源,或者RSSHub。同时,它可以和主流的RSS软件(miniflux、tinytinyrss、freshrss、feedly)等进行联动,一键订阅到软件中。
如上所述,RSSHub需要一个服务端,自然,你可以使用官方服务端:https://rsshub.app。然而,在一些反爬严格的网站上,官方服务端常常失效,因此我们通常选择自建或使用其他大佬建好的服务端。在搜索引擎上搜索:Welcome to RSSHub!。就能获取一些暂时能用的RSSHub服务端。但是别人搭建的自然会有失效以及隐私问题,所以自建是一个好的选择。
RSSHub的自建就方便得多:
以下是部分参数解释:
更多参数请查看官方文档:
之后,进入http://你的ip:你的端口/,如果成功,则能看到如下画面:

将 http://你的ip:你的端口/ 填入RSSHub Radar中的“自定义RSSHub域名”中,即可使用。
关于上面提到的通用参数,指的是只使用RSSHub就初步定制一些RSS源,具体还请移步探索:
自建RSS订阅源——feedless
feedless是一个根据网页内容自动创建RSS订阅源并支持自定义修改的项目,它脱胎于rssproxy。他支持个人搭建的同时,也有一个官方服务。官方服务就已经满足我们的正常使用,网址:
进入网址后登录,点击右上角的Creat即可创建新的订阅。
在上方的空白栏填入你想要订阅的网站,此处我以https://webdevbev.co.uk/blog.html为例演示操作:

点击下面的Feeds in HTML。

可以看到左边的3个可选项,是它自动获取的可能的订阅内容。当我选择了某项时,左边对应的部分被蓝色框起来。图中我选择的是第一项,其正好框选的就是一篇篇文章(我想要的),之后点击右下角next。

在这个页面,上面的Selectors中,可以微调部分元素的位置。左下角是过滤以及全文输出,按需填写,填好了继续next。

在这一页中填写description,即可save。之后,你就能在Feeds页面找到这个订阅。

点进去即可获得对应的RSS订阅链接

如果有兴趣,也可以尝试个人搭建,官方指南:
但是这里的指南貌似已经过期了,我在dokerhub上也已经找不到其中使用的镜像,希望有大神能出完美搭建的教程。因此个人搭建我更推荐它的前身rssproxy,github地址:
在我看来,rssproxy在功能上已经足够使用。另外还有用huginn的方法,因为操作过于复杂,感兴趣的朋友还请自己尝试。
其他网站自建RSS——第三方服务
虽然我们已经有了以上各种手段获得RSS订阅,但是仍然有部分网站是没办法订阅的,比如twitter、微信公众号等。实际这里也是有各种手段能折腾的,如果不愿或者没条件折腾,就需要付费购买第三方服务。微博大神(id:刚门里拉出个电锯)的文章(各类信息的RSS获取、处理方法)中已经收集了一些网站的RSS第三方服务提供商,由于地址在微博上,此处不好贴上。
到此,你应该已经初步了解了RSS的使用方法,并能够创建个性化RSS源并聚合了,那么,享受阅读吧!
如果文章中有纰漏,欢迎朋友们指正。如果有更好的解决方法,欢迎朋友们提出。如果遇到问题,也欢迎朋友们交流(虽然本文作者大概率无法解决)
本文所用全部资源:
参考资料:
2023 年,我为什么选择 Miniflux 作为 RSS 主力工具:https://v2ex.com/t/963837#reply7
rss信息流打造过程 rsshub+miniflux+fluent reader lite 腾讯云服务器部署:https://zhuanlan.zhihu.com/p/541214571
【服务器能干什么】二十分钟搭建一个属于自己的RSS服务:https://blog.laoda.de/archives/tinytinyrss/
FreshRSS官方docker指南:https://github.com/FreshRSS/FreshRSS/tree/edge/Docker
RSSHub官方中文文档:https://docs.rsshub.app/zh/
News – 支持 Miniflux 和 Nextcloud 的 RSS 阅读器[Android]:https://www.appinn.com/co-appreactor-news