网站RSS订阅源生成器html2rss-web
简介
什么是 html2rss-web ?
html2rss-web是一个开源的Web应用,可以将任何网站转换为RSS/JSON订阅源。它通过自动抓取网页内容,帮助用户将没有RSS输出的网站变成可订阅的格式,方便在RSS阅读器中阅读。
主要特点
- 自动抓取:自动解析网页内容,生成
RSS格式输出 - 配置化管理:通过
YAML配置文件定义抓取规则 - 用户认证:支持多账户
token认证,确保订阅安全 - 代理支持:内置
HTTP/HTTPS代理配置,适应复杂网络环境 - 健康检查:内置健康检查端点,便于监控服务状态
- 开源免费:基于
MIT协议开源,可免费使用和修改
应用场景
- 订阅无 RSS 的网站:将没有提供
RSS输出的网站转为可订阅格式 - 聚合资讯:将多个网站的更新聚合到统一阅读器
- 监控更新:监控特定页面的内容变化
- 阅读优化:在
RSS阅读器中统一阅读网站更新

html2rss-web 是一个轻量级的 RSS 订阅源生成工具,适合需要聚合阅读网页内容的用户。
安装
在群晖上以 Docker 方式安装。
本项目包含两个服务(html2rss-web + browserless),需要使用 docker-compose 部署。
其中:Browserless 的作用,负责处理网页渲染和爬取工作,如果你只需要简单的 HTML 提取可以使用任意 API token
准备
通过 SSH 登录到您的群晖,首先创建配置目录并准备配置文件:
1 | # 新建文件夹 |
env.txt
在项目根目录下 /volume1/docker/html2rss/ 创建 env.txt 环境变量文件,内容如下:
1 | # 启用自动抓取功能 |
production模式下,若不设置AUTO_SOURCE_ENABLED=true,页面上会显示Feed creation is disabled on this instance,也就是不能使用抓取功能

SENTRY_DSN是 Sentry 错误追踪服务的数据源名称(Data Source Name),用于启用应用的错误监控和日志聚合。
feeds.yml
在 /config 目录下创建 feeds.yml 配置文件,可以配置需要抓取的网站规则,下面的内容只配置了认证
1 | auth: |
【注意】:
token不能太简单,否则启动时会报错。建议使用openssl rand -hex 32来生成
1 | html2rss-web | Weak tokens found for users: admin |
当现有信息流或自动来源不足时,可以为你想关注的网站编写 YAML 自定义配置,具体配置参考官方文档:https://html2rss.github.io/creating-custom-feeds
docker-compose.yml
在项目根目录下创建 docker-compose.yml 文件:
1 | # Docker Compose configuration for html2rss-web |
启动服务
1 | # 进入 html2rss 目录 |
完整的目录结构如下:
1 | /html2rss/ |

运行
在浏览器中访问 http://<群晖IP>:4001 即可进入 Web 界面。

搜了一个 HackerNews CN,输入其网址 https://hn.aimaker.dev
第一次使用,还需要输入 /config/feeds.yml 中设置的 token

等待生成预览

对照看了一下,似乎只生成了 问答 部分,看来想要用好 html2rss,还需要深入研究官方文档,完善 feeds.yml 的设置

试了下其他分类,例如 24 小时热榜的地址,

但是从日志看,https://hn.aimaker.dev/category/top 很容易超时导致无结果

将上面获取的地址放入 RSS 阅读器

能获取到标题

注意事项
- 代理配置:
HTTP_PROXY和HTTPS_PROXY环境变量用于代理访问,请根据实际网络环境调整 - Token 安全:生产环境请使用强随机
Token(openssl rand -hex 32生成) - Browserless 限制:试用
API token有并发限制,生产环境建议注册自己的Browserless账户 - 数据持久化:
feeds.yml配置文件需要持久化保存,否则重启后会丢失配置 - 端口占用:
4001端口可能被占用,请根据实际情况调整
参考文档
html2rss/html2rss-web: Generates RSS feeds of any website & serves to the web
地址:https://github.com/html2rss/html2rss-webGetting Started | html2rss
地址:https://html2rss.github.io/web-application/getting-started/browserless/browserless: Deploy headless browsers in Docker. Run on our cloud or bring your own. Free for non-commercial uses.
地址:https://github.com/browserless/browserless