RSS订阅是获取信息的重要方式,但面对大量内容时,如何只保留自己感兴趣的部分?django-rss-filter
是一个开源的 Django 应用程序,可以帮助你通过关键词或分类过滤现有 RSS 订阅源,生成一个全新的、经过筛选的 RSS Feed。以下是如何使用它的详细指南。
什么是 django-rss-filter
?
django-rss-filter
是一个基于 Django 的工具,用于创建过滤后的 RSS 订阅源。它通过移除包含特定关键词或类别的文章,帮助用户专注于自己感兴趣的内容。它是 RSSfilter.com 的核心组件,支持自托管,适合需要个性化 RSS 订阅的用户。
该应用提供了一个返回过滤后 RSS Feed 的视图,并可以通过 Django 管理后台进行配置。需要注意的是,它不提供前端界面,所有操作需通过管理后台完成。

快速开始
在现有 Django 项目中添加 django-rss-filter
如果你已经有一个 Django 项目,可以按照以下步骤集成 django-rss-filter
:
- 安装依赖
使用uv
(或其他工具如pip
或Poetry
)安装django-rss-filter
:uv add django-rss-filter
- 添加到 INSTALLED_APPS
在项目的settings.py
文件中,将rssfilter
添加到INSTALLED_APPS
:INSTALLED_APPS = [
...
'rssfilter',
]
- 运行数据库迁移
执行以下命令以应用django-rss-filter
的数据库迁移:uv run ./manage.py migrate
- 包含 URL 配置
在项目的urls.py
文件中,添加rssfilter
的 URL 配置:from django.urls import path, include
urlpatterns = [
...
path("", include("rssfilter.urls")),
]
创建新的 Django 项目
如果没有现成的 Django 项目,可以按照以下步骤创建一个新项目并集成 django-rss-filter
:
- 初始化项目目录
创建一个新的 Django 项目目录:uv init my-django-project
cd my-django-project
- 安装 Django
添加 Django 依赖:uv add django
- 创建 Django 项目
初始化 Django 项目:uv run django-admin startproject my_django_app .
- 运行初始迁移
应用 Django 的默认数据库迁移:uv run ./manage.py migrate
- 创建超级用户
创建一个管理后台的超级用户账户:uv run ./manage.py createsuperuser
- 启动开发服务器
启动开发服务器:uv run ./manage.py runserver
完成后,访问 http://127.0.0.1:8000/admin/
登录 Django 管理后台,然后按照上述“在现有 Django 项目中添加 django-rss-filter
”的步骤进行集成。
示例项目
django-rss-filter
提供了一个示例项目,位于 example/
目录下。你可以按照以下步骤运行它:
- 进入示例项目目录
cd example
- 运行数据库迁移
uv run ./manage.py migrate
- 创建超级用户
uv run ./manage.py createsuperuser
- 启动开发服务器
uv run ./manage.py runserver
完成后,访问 http://127.0.0.1:8000/admin/
登录管理后台,创建一个过滤后的 RSS 订阅源。创建完成后,你可以通过 http://127.0.0.1:8000/[feed_uuid]/
访问该订阅源,其中 [feed_uuid]
是订阅源的唯一标识符。
配置选项
django-rss-filter
提供了一个可配置的设置项:RSS_FILTER_CACHE_SECONDS
。此设置控制 RSS 订阅源的缓存时间,默认值为 300
秒(即 5 分钟)。你可以在 settings.py
中自定义该值,例如:
RSS_FILTER_CACHE_SECONDS = 600 # 缓存 10 分钟
评论