RSS Funnel
是一款模块化的 RSS 处理管道系统,它能够以多种方式处理 RSS/Atom 源。
RSS Funnel 特点:
RSS Funnel
可以用来抓取网页的全文内容,并生成一个新的 RSS 源,其中包含了每篇文章的完整内容。RSS Funnel
可以自动高亮显示文章中的关键词,帮助快速识别出感兴趣的信息点。RSS Funnel
将匹配特定条件的 RSS 项通过电子邮件或其他即时通讯工具发送给自己,实现个性化的内容推送。RSS Funnel
还可以用于自动保存所有 RSS 订阅的内容到本地或云存储服务中,方便日后检索和归档。RSS Funnel
可以轻松地完成这种转换工作。本次实践为个人测试环境,操作系统版本为centos7.6。
hostname | IP地址 | 操作系统版本 | Docker版本 |
---|---|---|---|
ubuntu-001 | 192.168.3.251 | Ubuntu 22.04.1 LTS | 24.0.7 |
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.使用Docker部署RSS Funnel工具。
检查Docker服务是否正常运行,确保Docker正常运行。
root@ubuntu-001:~# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2024-08-02 03:27:13 UTC; 4min 57s ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 496286 (dockerd)
Tasks: 114
Memory: 46.2M
CPU: 5.926s
CGroup: /system.slice/docker.service
├─496286 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
检查Docker版本
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701
检查Docker compose版本,确保2.0以上版本。
[root@jeven ~]# docker compose version
Docker Compose version v2.6.0
拉取funnel镜像,镜像为
ghcr.io/shouya/rss-funnel:latest
root@ubuntu-001:~# docker pull ghcr.io/shouya/rss-funnel:latest
latest: Pulling from shouya/rss-funnel
49f7b6643e3f: Pull complete
Digest: sha256:2d51f032607a342ada479ec48943c8561ec11a3d097992a7372d8bc01dd6ae53
Status: Downloaded newer image for ghcr.io/shouya/rss-funnel:latest
ghcr.io/shouya/rss-funnel:latest
mkdir -p /data/rss-funnel/ && cd /data/rss-funnel/
在部署目录下,编辑funnel.yaml文件,内容如下:
vim funnel.yaml
root@ubuntu-001:/data/rss-funnel# cat funnel.yaml
endpoints:
- path: /jeven-blog.xml
note: jeven-blog-aa
source: https://rss.csdn.net/jks212454/rss/map
filters:
- full_text: {}
- simplify_html: {}
path:是访问地址,可参考以上写法;
note:是简介,可自定义设置;
source:是源地址;
filters:过滤器;
full_text:此过滤器从文章中获取文章的完整 HTMLlink并将其填充到content文章的字段中;
simplify_html:此过滤器利用readability 库简化了 HTML ;
vim docker-compose.yaml
version: "3.8"
services:
rss-funnel:
image: ghcr.io/shouya/rss-funnel:latest
ports:
- 5090:4090
volumes:
- ./funnel.yaml:/funnel.yaml
environment:
RSS_FUNNEL_CONFIG: /funnel.yaml
RSS_FUNNEL_BIND: 0.0.0.0:4090
RSS_FUNNEL_WATCH: true
root@ubuntu-001:/data/rss-funnel# docker compose up -d
[+] Running 2/2
✔ Network rss-funnel_default Created 0.1s
✔ Container rss-funnel-rss-funnel-1 Started 0.7s
检查rss-funnel容器状态,确保rss-funnel容器正常启动。
root@ubuntu-001:/data/rss-funnel# docker compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
rss-funnel-rss-funnel-1 ghcr.io/shouya/rss-funnel:latest "/rss-funnel server" rss-funnel 48 seconds ago Up 47 seconds 0.0.0.0:5090->4090/tcp, :::5090->4090/tcp
检查rss-funnel容器,确保服务运行。
docker compose logs
访问地址:http://192.168.3.251:5090,将IP替换为自己服务器IP地址,进入到RSS-Funnel初始页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。
我们点击链接可以看到每篇文章都是显示的全文,此时我们生成了一个
我们在selfoss工具中,订阅RSS源:http://192.168.3.251:5090/jeven-blog.xml
RSS Funnel
作为一款模块化的 RSS 处理管道系统,提供了丰富的功能来定制和管理 RSS/Atom 订阅源。它不仅可以获取全文内容、生成 RSS 订阅源,还能进行内容过滤、关键词高亮等多种操作,为用户提供高度个性化的 RSS 阅读体验。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。