我的RSS生活(一)
最近乱七八糟折腾了一大堆东西......忙死了忙死了忙死了!先把RSS这玩意记录一下吧。
RSS(英文全称:RDF Site Summary 或 Really Simple Syndication[2]),中文译作简易信息聚合[3],也称聚合内容[4],是一种消息来源格式规范,用以聚合多个网站更新的内容并自动通知网站订阅者。使用 RSS 后,网站订阅者便无需再手动查看网站是否有新的内容,同时 RSS 可将多个网站更新的内容进行整合,以摘要的形式呈现,有助于订阅者快速获取重要信息,并选择性地点阅查看。
--来自维基百科
说白了就是把各种乱七八糟的信息来源汇聚起来,统一过滤。对我来说最大的作用就是打破信息茧房,还不用看广告啦~
服务端选择和介绍
现在常用的RSS服务端程序大概三个,Freshrss,tiny tiny rss,Miniflux。感谢@zoomyale整理的区别
我自己倒也全都自己搭建试了一下,只能说Freshrss和tiny tiny rss都臃肿得有点过分了,大部分功能其实用不上,另外一些需要插件实现的功能干脆插件都失效了......
说了这么多,所以我自己最后肯定选的是Miniflux啦~
优点:超级轻量化,资源占用原少于另外那俩,界面简介,该有的功能都有(抓取全文什么的)集成API齐全,支持导入导出
缺点:不支持订阅源批量操作,想删就只能一个一个删了...默认没打开抓取全文,opml导入的订阅源全没开真是要命了....(虽然可以在客户端抓取,但是原生支持是最好的)
使用docker-compose搭建
默认已经安装好docker,没安装的先使用下面命令安装
curl -fsSL https://get.docker.com | bash -s docker
国内使用阿里源
bash <(curl -Ls https://raw.githubusercontent.com/fengyuanluo/box/main/sh%E8%84%9A%E6%9C%AC/docker.sh) -s docker --mirror Aliyun
创建一个docker-compose.yaml文件
services:
# Miniflux 服务配置
miniflux:
# 使用最新版本的 Miniflux 镜像
image: miniflux/miniflux:latest
# 将容器的 8080 端口映射到主机的 80 端口
ports:
- "80:8080"
# 确保在数据库服务健康后才启动 Miniflux
depends_on:
db:
condition: service_healthy
# 设置 Miniflux 的环境变量
environment:
# 数据库连接 URL
- DATABASE_URL=postgres://miniflux:secret@db/miniflux?sslmode=disable
# 运行数据库迁移
- RUN_MIGRATIONS=1
# 创建管理员账户
- CREATE_ADMIN=1
- ADMIN_USERNAME=admin
- ADMIN_PASSWORD=test123
# PostgreSQL 数据库服务配置
db:
# 使用 PostgreSQL 15 版本镜像
image: postgres:15
# 设置 PostgreSQL 的环境变量
environment:
- POSTGRES_USER=miniflux
- POSTGRES_PASSWORD=secret
- POSTGRES_DB=miniflux
# 将数据库数据持久化到名为 miniflux-db 的 volume
volumes:
- miniflux-db:/var/lib/postgresql/data
# 健康检查配置
healthcheck:
# 使用 pg_isready 命令检查数据库是否就绪
test: ["CMD", "pg_isready", "-U", "miniflux"]
# 每 10 秒检查一次
interval: 10s
# 启动后 30 秒开始进行健康检查
start_period: 30s
# 定义持久化存储卷
volumes:
miniflux-db:
具体数据根据注释改就好了,然后在这个目录下启动compose
docker compose up -d
然后打开IP:端口就可以进入页面啦。
界面贼简单明了,点击源就可以添加订阅源,支持从opml文件或者url导入订阅源。
不魔改没有灵魂!
原创的一些脚本
实际体验过程中,由于我有一大堆要导入和添加的订阅源.......所以出现了下面几个问题
1.导入的订阅源默认不会抓取全文,这意味着我导入之后还得一个一个打开-打开高级选项-勾选抓取全文-点击更新
2.压根没有批量管理订阅源这功能
3.新建订阅源也得重复一遍1中过程
总结俩字:要命!
所以为了方便起见,某完全不懂代码的小白,靠着强大的GPT-4o和Claude-3-5-sonnet,手搓了仨脚本出来......
用之前记得把脚本里的域名改成你自己的
脚本1:为每个订阅源添加勾选框,算是实现简单的批量管理功能吧
脚本2:添加订阅源时自动勾选抓取全文
脚本3:导入的那一堆没抓取全文的,打开这个脚本,然后按住Ctrl,一路点下去就会补上抓全文了
卧槽这网站没给RSS!
啊......从某种意义上来说,RSS这玩意都算是上一个甚至上上个十年的东西了,现在的网站,除了一堆个人博客,少数论坛,真没几个原生提供RSS的了,所以调用第三方RSS就变得非常重要,这里详细介绍两种,粗略介绍两种吧
RSSHUB
RSSHub是一个开源、易于使用的RSS生成器。它可以将各种网站的内容转换成RSS订阅源,让用户能够更方便地获取和聚合信息。无论是社交媒体、新闻网站,还是视频平台,RSSHub都能帮你创建定制的RSS源。它支持数百个网站,并且还在不断扩展中。使用RSSHub,你可以将散落在各处的信息集中到一个RSS阅读器中,大大提高信息获取的效率。对于喜欢自主管理信息流的朋友来说,RSSHub绝对是一个不可多得的利器。
--来自Claude
总而言之一个号称“万物皆可RSS”的神奇项目,先行谢过一群为爱发电的路由编写者们。
这里就不讲原理啥的了,直接上手!
搭建
简单起见直接docker-cil了,注意,这里推荐搭建在国外服务器上,不然你懂的,而且后续操作也需要一个公网ip。
docker run -d --name rsshub -p 1200:1200 diygod/rsshub:chromium-bundled
然后打开IP:1200看到图示界面
PS.一个懒得搭建的方法:直接在Google搜一下”Welcome to RSSHub“,就能搜到很多其他人搭建好的rsshub,当然可用性就得看其主人了
使用
浏览器安装拓展,点击左上角小齿轮进入设置,填写RSSHUB实例地址和Miniflux地址,为了更加方便,可以在设置快捷键处设置一个顺手的快捷键
PS.除了RSSHub Radar,还可以使用这些东西调用RSSHUB:Easy-To-Rss,RSS+
WeWeRSS
这是一个生成公众号订阅源的工具,还是一条命令启动,AUTH_CODE相当于密码,其他看着改就好。
docker run -d \
--name wewe-rss \
-p 4000:4000 \
-e DATABASE_TYPE=sqlite \
-e AUTH_CODE=123567 \
-v $(pwd)/data:/app/data \
cooderl/wewe-rss-sqlite:latest
使用方式官方写的就很好,这里贴一下顺便补充一下下(会在最后标注参考文献)
1.进入账号管理,点击添加账号,微信扫码登录微信读书账号。
2.进入公众号源,点击添加,通过提交微信公众号分享链接,订阅微信公众号。 (添加频率过高容易被封控,等24小时解封)
3.通过右上角的导出OPML/RSS就可以直接全部导入Miniflux
rssproxy/feedless
这俩我严重怀疑是一家的来着,都可以很简单的使用docker自部署,不过这俩官网都没墙,直接用就行了,相对来说这俩可视化的用起来还是简单很多
rssproxy:https://rssproxy.migor.org/
feedless:https://feedless.org/
Huginn
不会,下一个,谁会了可以写个傻瓜式教程教教我
把邮件转为RSS源
你真没看错,邮箱也能转成RSS源,都是通过邮件软件订阅RSS,这不就反过来了嘛,让我们高呼一声”Everything is RSSible!“
打开kill-the-newsletter,在输入框输入一个想要的标题,这玩意后续会变成订阅源的名字,然后点击Create feed,获得一个邮箱地址,把你想用来生成RSS的邮箱设置转发到这个邮箱就好。
结语
暂且写这么多吧(希望我没落东西),下一篇估计写一篇安卓端的RSS阅读器横评吧,毕竟一大堆APP看得眼都花了.......
参考文献
Miniflux安装:https://miniflux.app/docs/docker.html
RSSHUB安装:https://docs.rsshub.app/zh/deploy/
wewerss:https://github.com/cooderl/wewe-rss
邮件转rss:https://blog.csdn.net/2301_80693261/article/details/134068536
用Miniflux自建轻便好用的RSS服务:http://zoomyale.com/2018/miniflux_rss/
rssproxy自部署:https://github.com/damoeb/rss-proxy
kill-the-newsletter自部署:https://github.com/radically-straightforward/radically-straightforward/blob/main/guides/deployment.md
feedless自部署:https://github.com/damoeb/feedless
折腾过程中看了很多教程,在此全部致谢