Blog/public/rss-read/index.html

276 lines
15 KiB
HTML
Raw Normal View History

2024-03-07 10:30:51 +08:00
<!DOCTYPE html>
<html lang="en">
<head>
<title>Dich&#x27;blog</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5">
<meta name="robots" content="noodp"/>
<link rel="stylesheet" href="https://blog.dich.ink/style.css">
<link rel="stylesheet" href="https://blog.dich.ink/color/blue.css">
<link rel="stylesheet" href="https://blog.dich.ink/color/background_dark.css">
<link rel="stylesheet" href="https://blog.dich.ink/font-hack-subset.css">
<meta name="description" content="">
<meta property="og:description" content="">
<meta property="og:title" content="Dich'blog">
<meta property="og:type" content="article">
<meta property="og:url" content="https://blog.dich.ink/rss-read/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:description" content="">
<meta name="twitter:title" content="Dich'blog">
<meta property="twitter:domain" content="blog.dich.ink">
<meta property="twitter:url" content="https://blog.dich.ink/rss-read/">
<link rel="alternate" type="application/atom+xml" title="RSS" href="https://blog.dich.ink/atom.xml">
</head>
<body class="">
<div class="container">
<header class="header">
<div class="header__inner">
<div class="header__logo">
<a href="https://blog.dich.ink" style="text-decoration: none;">
<div class="logo">
Dich&#x27;blog
</div>
</a>
</div>
</div>
<nav class="menu">
<ul class="menu__inner">
<li class="active"><a href="https://blog.dich.ink">blog</a></li>
<li><a href="https://blog.dich.ink/tags">tags</a></li>
<li><a href="https://blog.dich.ink/archive">archive</a></li>
<li><a href="https://blog.dich.ink/about">about me</a></li>
<li><a href="https://github.com/Dichgrem" target="_blank" rel="noopener noreferrer">github</a></li>
</ul>
</nav>
</header>
<div class="content">
<div class="post">
<h1 class="post-title"><a href="https://blog.dich.ink/rss-read/">RSS阅读指南</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2024-01-20
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.ink/tags/rss/">#RSS</a></span>
<div class="post-content">
<p>前言 RSS提供了一种数据格式以XML可扩展标记语言的形式组织信息包括文章标题、摘要、链接和发布日期等。这些信息形成了所谓的“订阅源”Feed用户可以使用RSS阅读器Feed Reader来订阅这些源。</p>
<span id="continue-reading"></span><h2 id="yi-shen-me-shi-rss">一.什么是RSS</h2>
<p>如果你使用过类似红板报,轻芒杂志,摸鱼kiki,今日热榜等APP应该对 RSS 并不陌生。</p>
<p>RSSReally Simple Syndication是一种用于发布经常更新的内容的标准通常用于博客、新闻网站和其他线上发布的信息。RSS允许用户订阅这些站点的内容以便在内容有更新时用户能够获得及时的通知。</p>
<p>基本上RSS提供了一种数据格式以XML可扩展标记语言的形式组织信息包括文章标题、摘要、链接和发布日期等。这些信息形成了所谓的“订阅源”Feed用户可以使用RSS阅读器Feed Reader来订阅这些源。</p>
<p>RSS的主要优势包括</p>
<p>即时通知用户订阅了RSS源后当源中的内容有更新时用户将立即收到通知而无需手动检查网站。</p>
<p>集中管理使用RSS阅读器用户可以集中管理多个网站的更新而无需逐个访问这些站点。</p>
<p>隐私保护RSS订阅不需要提供个人信息用户只需关注感兴趣的内容而无需注册账户。</p>
<p>定制内容:用户可以选择订阅感兴趣的主题或网站,定制他们的信息流。</p>
<p>减少信息过载:通过只关注真正感兴趣的内容,用户可以减少信息过载,集中注意力在最关键的信息上。</p>
<p>如果我们想更高效地获取信息,不在多个应用间来回切换,另一方面拒绝算法给我们推荐的内容,那么建议用回原始的 RSS。</p>
<p>虽然RSS曾经非常流行但随着社交媒体和其他信息传递方式的兴起逐渐成为时代的眼泪。然而RSS仍然是一种有效的信息分发和获取方式许多网站和博客仍提供RSS源。题主曾经计划使用Kindle作为专门的RSS阅读器后来由于过于昂贵而作罢。</p>
<h2 id="er-ru-he-jin-xing-rssyue-du">二.如何进行RSS阅读</h2>
<p>基本上有以下几步:</p>
<p>寻找RSS订阅源</p>
<p>确定RSS客户端</p>
<p>自建RSS服务端可选</p>
<p>寻找RSS订阅源</p>
<p>要知道一个网站是否支持 RSS 订阅最直接的方法就是看网站的底部或侧边栏是否有 RSS 图标。一般来说图标所指向的地址就是该网站的订阅链接可以直接点击 跳转到 RSS 客户端内进行订阅,也可以复制粘贴按钮中的地址到自己在用的 RSS 服务中订阅这些网站中的内容。</p>
<p>在浏览器中推荐使用RSS Hub radar 插件可以自动找到可用的RSS源并提示。</p>
<p>有时候网站不会直接给出订阅源,这时候你也可以尝试在网站域名后面加上 /feed  /rss 或许可以碰巧猜中比如少数派的 RSS 订阅链接就是 https://sspai.com/feed。当然你也可以直接通过搜索引擎通过 网站名 + RSS 的关键字进行搜索往往都能找到支持网站的 RSS 链接。</p>
<p>当然我们也可以直接导入现有的订阅源一般为OPML文件如RSS Source;或者调用第三方的RSS服务如anyfeeder等等。</p>
<p>这里介绍一个RSS神器由DIygod 发起的RSShub项目</p>
<p>RSSHub是一个开源项目旨在为用户提供一个集中化、可定制的RSSReally Simple Syndication源的生成器。该项目的目标是通过从各种网站和平台获取信息将其聚合到用户自定义的RSS源中从而使用户能够方便地订阅他们关心的内容。</p>
<p>开源性质: RSSHub是一个开源项目其源代码可以在GitHub上找到。这意味着任何人都可以查看、使用、修改和贡献代码。</p>
<p>支持的站点: RSSHub支持从各种网站和平台提取数据包括但不限于新闻网站、社交媒体、博客、视频分享平台等。用户可以根据自己的需求选择要订阅的站点。</p>
<p>自定义生成: 用户可以通过指定参数和规则来定制他们的RSS源以便获取特定主题或关键字的更新。这使得用户能够灵活地定制他们的订阅流。</p>
<p>社区参与: RSSHub是一个社区驱动的项目有很多开发者和贡献者参与其中。社区可以通过GitHub进行讨论、报告问题和提交代码。</p>
<p>部署方式: RSSHub可以自行部署用户可以在自己的服务器上搭建RSSHub实例以便更好地控制和定制生成的RSS源。
<img src="https://pic.dich.ink/1/2024/03/06/65e86657a4cc2.webp" alt="image-wbsl.webp" /></p>
<p>确定RSS客户端</p>
<p>RSS客户端非常丰富包括Android端IOS端Windows端linux端浏览器插件甚至Vscode插件用来摸鱼等等。这里推荐一些阅读器当然也可以选择类似Feedly的服务商。</p>
<p>AndroidNews在Fdorid里可下载中文名为“新闻”界面简洁功能全面支持本地或连接自建服务端。</p>
<p>IOSInoreader 其提供了方便的阅读体验,支持离线阅读、标签和快速搜索。</p>
<p>WindowsFluent Reader,在github上开源界面优雅支持本地或连接自建服务端。</p>
<p>linuxFluent Reader或Newsboat 是 Newsbeuter 的一个分支,一款文本控制台 RSS/Atom 订阅阅读器。</p>
<p>自建RSS服务端</p>
<p>开源的RSS服务端软件可以用来搭建个人的RSS阅读服务</p>
<p>FreshRSS: FreshRSS 是一款简单易用的自建RSS服务端软件。它提供了丰富的功能包括标签、筛选器、阅读统计等并支持多用户。</p>
<p>Miniflux: Miniflux 是一个轻量级的RSS/Atom阅读器服务支持自建。它采用Go语言编写具有快速响应和简洁的用户界面。</p>
<p>Tiny Tiny RSS (tt-rss): Tiny Tiny RSS 是一款功能丰富的自建RSS服务端软件提供了类似于Google Reader的界面并支持标签、过滤器、插件等。</p>
<p>Selfoss: Selfoss 是一款支持多种数据源包括RSS的自建聚合器。它的界面简洁支持标签、过滤器和插件同时也提供了跨平台的客户端。</p>
<p>Miniflux 2: 不要与上面提到的Miniflux混淆Miniflux 2 是 Miniflux 的一个全新版本同样支持自建RSS服务。</p>
<p>这里以MiniFlux为例其优势在与</p>
<p>程序设计极简,不处理任何订阅之外的事情。</p>
<p>程序无外部依赖,运行性能高。</p>
<p>支持自动抓取并缓存图片,加速浏览。</p>
<p>有限支持自动将摘要替换为全文进行抓取。</p>
<p>支持多账号登录,支持 Fever API ,允许客户端从外部登录。</p>
<p>支持集成 PinBoard 、Instapaper、 Pocket、Wallabag、Nunux Keeper 等服务。</p>
<p>提供 Open API、书签快速订阅脚本。</p>
<p>维护者和社区相对活跃,更新频率高。</p>
<p>步骤:</p>
<p>1.安装docker 和docker-compose</p>
<p>2.Docker安装miniflux</p>
<p>1创建并进入你想安装Miniflux的文件夹</p>
<p>mkdir ~/miniflux # 在根目录创建名为miniflux的文件夹</p>
<p>cd ~/miniflux # 进入miniflux文件夹</p>
<p>2创建docker-compose.yml文件</p>
<p>nano docker-compose.yml # 使用nano编辑器创建会自动打开文件以写入内容</p>
<p>3在文件中写入以下内容并保存</p>
<p>version: '3.4'</p>
<p>services:</p>
<p>miniflux:</p>
<p>image: miniflux/miniflux:latest</p>
<p>ports:</p>
<ul>
<li>&quot;127.0.0.1:8080:8080&quot; #调整一增加localhost ip 并改port为8080</li>
</ul>
<p>depends_on:</p>
<ul>
<li>db</li>
</ul>
<p>environment:</p>
<ul>
<li>
<p>DATABASE_URL=postgres://miniflux:secret@db/miniflux?sslmode=disable</p>
</li>
<li>
<p>RUN_MIGRATIONS=1</p>
</li>
<li>
<p>CREATE_ADMIN=1</p>
</li>
<li>
<p>ADMIN_USERNAME=admin # 登录Miniflux的用户名可自定义</p>
</li>
<li>
<p>ADMIN_PASSWORD=password # 登录Miniflux的密码可自定义至少6位</p>
</li>
<li>
<p>&quot;BASE_URL=https://enter.your.url&quot; # 调整二输入想用来访问Miniflux的域名</p>
</li>
</ul>
<p>healthcheck:</p>
<p>test: [&quot;CMD&quot;, &quot;/usr/bin/miniflux&quot;, &quot;-healthcheck&quot;, &quot;auto&quot;]</p>
<p>db:</p>
<p>image: postgres:latest</p>
<p>environment:</p>
<ul>
<li>
<p>POSTGRES_USER=miniflux</p>
</li>
<li>
<p>POSTGRES_PASSWORD=secret</p>
</li>
</ul>
<p>volumes:</p>
<ul>
<li>miniflux-db:/var/lib/postgresql/data</li>
</ul>
<p>healthcheck:</p>
<p>test: [&quot;CMD&quot;, &quot;pg_isready&quot;, &quot;-U&quot;, &quot;miniflux&quot;]</p>
<p>interval: 10s</p>
<p>start_period: 30s</p>
<p>volumes:</p>
<p>miniflux-db:</p>
<p>该docker-compose.yml 文档内容基于Miniflux官方文档 并在细节上进行了调整。调整有两处一是将port改为127.0.0.1:8080:8080主要目的是错开常用port 80并调整localhost为127.0.0.1来跟nginx的设置一致如不调整miniflux将使用0.0.0.0无法顺利运行nginx二是在miniflux的environment中加入新的configuration BASE_URL请将内容换为你想用来访问Miniflux的域名。</p>
<p>如何用nano保存文件可以使用ctrl+X在退出编辑时选择Y来保存所有更改再敲一次回车便可以回到命令行。</p>
<p>4运行以下代码进行安装</p>
<p>docker-compose up -d</p>
<p>在浏览器中访问服务器ip:端口号如http://123.45.67.890:8080如显示登录界面即代表安装成功。域名解析和反代步骤略。</p>
<h2 id="san-minifluxde-shi-yong-fang-fa">三.Miniflux的使用方法</h2>
<p>首先,初次登陆会弹出注册界面,注册为管理员账户;随后进入主页,可以看到:
<img src="https://pic.dich.ink/1/2024/03/06/65e8667b963e1.webp" alt="image-eiye.webp" /></p>
<p>在设置中可以在集成中连接你自己的工作流以及设置Api密钥便于客户端登陆还可以添加用户来多人协作。
<img src="https://pic.dich.ink/1/2024/03/06/65e866764fcc5.webp" alt="image-hqtj.webp" /></p>
<p>在源+中可以添加新源并自动帮你查找网址中的RSS链接;也可以批量导入已有的订阅列表:</p>
<p>完成后我们可以在客户端进行连接当然如果就一台设备的话也不用服务端同步。如图所示以Fluent Reader为例输入刚刚的网址和用户名-密码,即可同步。
<img src="https://pic.dich.ink/1/2024/03/06/65e86679ca967.webp" alt="image-fozk.webp" /></p>
</div>
<div class="pagination">
<div class="pagination__title">
<span class="pagination__title-h">Thanks for reading! Read other posts?</span>
<hr />
</div>
<div class="pagination__buttons">
<span class="button previous">
<a href="https://blog.dich.ink/chatogpt/">
<span class="button__icon"></span>&nbsp;
<span class="button__text">如何高效地向 ChatGPT 提问</span>
</a>
</span>
<span class="button next">
<a href="https://blog.dich.ink/podcast-use/">
<span class="button__text">播客收听指北</span>&nbsp;
<span class="button__icon"></span>
</a>
</span>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="footer__inner">
<div class="copyright">
<span>©
2024
Dichgrem</span>
<span class="copyright-theme">
<span class="copyright-theme-sep">:: </span>
Theme: <a href="https://github.com/pawroman/zola-theme-terminimal/">Terminimal</a> by pawroman
</span>
</div>
</div>
</footer>
</div>
</body>
</html>