ChatGPT帮我彻底搞懂RSSHub:一篇你不想错过的RSS指南

in #cn8 months ago

00507-1768871246-fluid and surreal imagery of ink in water, symbolizing the unity and diversity of Asian Games, reflecting Alberto Seveso's exper.png

最近想部署自己的信息枢纽。就是把分散在各个角落的信源整合到一个网站,便于快速获取信息,便捷管理自己的日常信息和阅读。

首先想到的是Huginn。趁这个周末有点间,学习、研究和部署Hugin系统。

部署不复杂,但是就是无法通过互联网访问。服务端测试正常,公网ip和域名访问,总是错误,我是在oracle.com的免费VPS上部署,花了差不多一天时间,无数次讨教gpt4和claude2两位老师,总算搞明白是服务器上的oneavd 服务错误。但是怎么修复,两位ai老师使出浑身解数,也无法帮助一位linux菜鸟解决这个问题。

我一怒之下,终止了VPS上的这个实例。然后,没料到oracle现在收紧了免费vps供应,无论我怎么尝试,始终提示没有资源创建新的实例。

罢啦,只能暂时放弃Hugin计划。

正当我失望之际,我看到推特上有人在聊RSSHub。快速浏览了一下RSSHub介绍,这正是我想要的功能呀。让我非常感慨,互联网上真的到处是宝藏。但是,这么强大的一款RSS工具,我竟然直到今天才听说。也真的是孤陋寡闻了。

然而,RSSHUB的介绍文档语焉不详,过于工程师风格,默认用户都是深谙RSS技术的极客。即便是我这样对RSS阅读场景非常熟悉的用户,面对RSSHUB这款工具,也只理解个大概,它到底是怎么运行,用户要怎么使用,理解起来也是一头雾水。

不过,在AI时代,我们再不应该惧怕的就是,如何使用一项新技术。我问了Chatgpt老师一系列问题,总算把RSSHUB的种种疑问都搞清楚了。

不过这些知识大部分来自AI,我还没有在真实环境测试检验,大概率是有一些幻觉的。

如果你也觉得每天打开十几二十个网站或APP查看信息是一件痛苦的事,那么RSSHub可能是也你的救星。

目录

  1. RSSHub是什么?
  2. RSSHub Radar:你的RSS侦探
  3. 自己动手,丰衣足食:部署RSSHub
  4. 新手常见问题解答
    5.RSSHub 有哪些使用场景?
  5. 总结

1. RSSHub是什么?

RSSHub是一个开源、可扩展的RSS Feed生成器,简单来说,它能把各种各样的网站内容转换成RSS格式,让你用一个RSS阅读器就能看到所有的更新。

RSSHub的Slong是万物皆可RSS,透着霸气。不过看了下RSSHub提供网站资源和活跃的社区共创机制,这个slong倒也不算夸张。

为什么需要RSSHub?

想象一下,你每天需要查看的信息有:新闻、股市、天气预报、博客更新、甚至是你喜欢的漫画更新。打开这么多网站,不觉得累吗?RSSHub就是为了解决这个问题而生的。


2. RSSHub Radar:你的RSS侦探

RSSHub Radar是配合RSSHub使用的一个浏览器扩展,它能自动识别你正在访问的网站是否有可以在RSSHub上生成RSS Feed,并一键订阅。

如何使用?

  1. 安装扩展:在浏览器商店搜索RSSHub Radar并安装。
  2. 浏览网站:打开你感兴趣的网站。
  3. 一键订阅:点击RSSHub Radar图标,选择你想订阅的内容。

3. 自己动手,丰衣足食:部署RSSHub

如果你是个小控制狂,喜欢把一切都掌握在自己手里,那么自己部署一个RSSHub是个不错的选择。

部署步骤:

  1. 准备服务器:首先,你需要一个服务器。没有服务器?用NAS,或者你的电脑也行!
  2. 安装依赖:Node.js、npm等。
  3. 下载代码:从GitHub上克隆RSSHub的代码。
  4. 运行服务:在服务器上运行RSSHub。
  5. 群晖NAS的话,在套件中心添加“我不是狂神”的资源 https://spk7.imnks.com/ 在套件市场上直接安装RSSHub便可运行,非常方面。

然后呢?RSSHub安装后,打开来只是一个简简单单的告示。安装了怎么用呢?

我的疑问就是从这里开始。我想,大部分小白用户,第一次接触RSSHub,应该和我一样困惑吧?


4. 新手常见问题解答

如何理解RSSHub路由?

在RSSHub中,路由是一个用于获取特定信息源的URL路径。例如,如果你想获取BBC中文网的最新新闻,RSSHub的路由可能是 /bbc/chinese

如何添加路由?

步骤一:查找需要的路由
  1. 访问RSSHub文档:打开RSSHub的官方文档,通常位于 https://docs.rsshub.app/
  2. 搜索信息源:使用文档的搜索功能,找到你感兴趣的信息源。例如,你想订阅GitHub的某个仓库的更新,你可以在文档中找到相应的路由。
步骤二:测试路由
  1. 构建完整URL:将找到的路由添加到你的RSSHub实例的URL后面。例如,如果你的RSSHub实例在 http://[NAS的IP地址]:1200,而你找到的GitHub仓库路由是 /github/repos/:user/:repo,则完整的URL可能是 http://[NAS的IP地址]:1200/github/repos/[用户名]/[仓库名]
  2. 测试:在浏览器中打开这个完整的URL,看看是否能获取到信息。
步骤三:添加到RSS阅读器
  1. 打开RSS阅读器:例如Feedly或其他你喜欢的RSS阅读器。
  2. 添加新源:找到“添加新源”或“订阅”选项。
  3. 输入完整URL:在弹出的窗口或输入框中,粘贴你刚刚测试成功的完整URL。
  4. 确认添加:按下“添加”或“确认”按钮。

能否自动发现和添加RSSHub路由?

RSSHub本身没有内置的自动发现和添加路由的功能,但你可以通过一些外部工具和脚本来实现这一目标。

方法一:使用RSS自动发现浏览器插件
  1. 安装插件:在浏览器中安装一个支持RSS自动发现的插件,如“Awesome RSS”。
  2. 浏览网站:当你浏览一个网站时,该插件会自动检测是否有可用的RSS源。
  3. 添加到RSSHub:如果检测到RSS源,你可以手动将其添加到RSSHub中。
方法二:使用脚本自动添加
  1. 编写脚本:使用Python或其他编程语言,编写一个脚本,该脚本会自动从预定义的列表中添加路由到RSSHub。
  2. 运行脚本:定期运行这个脚本,以自动更新RSSHub的路由。
方法三:使用IFTTT或类似服务
  1. 创建IFTTT Applet:使用IFTTT(If This Then That)创建一个Applet,该Applet会监听你感兴趣的信息源。
  2. 设置触发器:例如,当某个博客发布新文章时。
  3. 设置操作:将新的信息源自动添加到RSSHub。
方法四:RSSHub Radar
  1. 安装RSSHub Radar插件:这是一个专门为RSSHub设计的浏览器插件,能自动发现网站的RSS源。
  2. 自动添加:当你浏览一个网站时,RSSHub Radar会自动检测该网站是否有可用的RSS源,并提供一键添加到RSSHub的选项。

如何为尚未在RSSHub上有路由的网站添加新路由?

方法一:自行开发RSSHub路由
  1. 了解RSSHub路由开发:阅读RSSHub的开发文档,了解如何创建一个新的路由。
  2. 环境准备:确保你的开发环境中有Node.js和Git。
  3. 克隆RSSHub仓库git clone https://github.com/DIYgod/RSSHub.git
  4. 编写代码:按照RSSHub的开发指南,编写新的路由代码。
  5. 测试:在本地运行RSSHub,测试新添加的路由。
  6. 提交Pull Request:如果一切正常,你可以将你的代码提交到RSSHub的GitHub仓库。
方法二:请求RSSHub社区添加
  1. 创建Issue:在RSSHub的GitHub仓库中创建一个新的Issue。
  2. 描述需求:详细描述你希望添加的路由,包括网站名称、网站URL和你希望获取的信息。
  3. 等待响应:等待社区成员或者维护者响应。他们可能会添加这个新的路由,或者给出其他建议。
方法三:使用第三方工具
  1. Web Scraping工具:使用如Octoparse、WebHarvy等Web Scraping工具抓取网站数据。
  2. 生成RSS Feed:使用抓取到的数据生成RSS Feed。
  3. 导入到RSSHub:将生成的RSS Feed导入到RSSHub。
方法四:使用RSS桥接服务
  1. 使用如FetchRSS、RSS-Bridge等服务:这些服务可以为没有RSS的网站生成RSS Feed。
  2. 配置和生成:按照这些服务的指南,输入网站URL,选择你需要的信息。
  3. 获取RSS URL:这些服务会生成一个RSS Feed的URL。
  4. 添加到RSSHub或RSS阅读器:你可以将这个URL直接添加到你的RSS阅读器,或者通过RSSHub进行进一步的处理。

如何快速判断一个网站是否有RSSHub路由?

方法一:使用RSSHub Radar
  1. 安装RSSHub Radar插件:这是一个专门为RSSHub设计的浏览器插件。
  2. 浏览目标网站:打开你想要判断的网站。
  3. 查看插件图标:如果该网站有RSSHub路由,RSSHub Radar的图标会变成彩色,并显示可用的RSS源。
方法二:搜索RSSHub文档
  1. 访问RSSHub文档:打开RSSHub文档
  2. 使用搜索功能:在文档的搜索框中输入网站的名称或关键词。
  3. 查看结果:如果有相关的路由,它们会在搜索结果中显示。
方法三:使用RSSHub的GitHub仓库
  1. 访问GitHub仓库:打开RSSHub的GitHub仓库
  2. 使用GitHub搜索:在仓库内使用GitHub的搜索功能,输入网站名称或关键词。
  3. 查看代码:如果有相关的路由,你会在代码或文件名中看到。
方法四:直接尝试
  1. 构造RSSHub URL:按照RSSHub的URL规则,尝试构造一个可能的URL。
  2. 访问URL:在浏览器中访问这个URL。
  3. 查看结果:如果页面返回有效的RSS Feed,则说明该网站有RSSHub路由。

如何修改RSSHub配置与添加新路由?

修改RSSHub配置:
  1. SSH连接:使用SSH工具连接到你部署RSSHub的服务器。

  2. 定位配置文件:通常,RSSHub的配置文件位于/etc/rsshub/app-config.yml或你自定义的路径。

  3. 编辑配置文件:使用文本编辑器(如nanovim)打开配置文件。

    nano /etc/rsshub/app-config.yml

  4. 修改配置:根据需要修改配置项,例如端口、缓存时间等。

  5. 保存并退出:保存修改后的配置文件并退出编辑器。

添加新路由:
  1. 克隆代码:如果你还没有RSSHub的代码,首先克隆它。

    git clone https://github.com/DIYgod/RSSHub.git

  2. 进入目录:进入RSSHub的代码目录。

    cd RSSHub

  3. 创建新路由文件:在lib/routes/目录下创建一个新的.js文件,例如my_route.js

  4. 编写路由代码:在新创建的.js文件中编写路由的实现代码。

  5. 注册路由:在lib/index.js中注册你的新路由。

    require('./routes/my_route');

  6. 测试路由:在本地运行RSSHub并测试新路由是否工作正常。

    npm run dev

  7. 部署更新:如果一切正常,使用git pull或其他方式将新路由部署到你的服务器。

重启RSSHub:
  1. 重启服务:为了使新的配置和路由生效,你需要重启RSSHub服务。

    pm2 restart rsshub

    或者
    systemctl restart rsshub

如何让RSSHub Radar与NAS上的RSSHub服务配合工作

步骤一:确保RSSHub在NAS上正常运行
  1. 部署RSSHub:在NAS上部署RSSHub,确保它可以在局域网内访问。
  2. 测试访问:在浏览器中输入NAS上RSSHub的IP地址和端口,确保能正常访问。
步骤二:安装RSSHub Radar
  1. 浏览器扩展商店搜索:在Chrome或Firefox的扩展商店中搜索“RSSHub Radar”。
  2. 安装插件:找到RSSHub Radar并进行安装。
步骤三:配置RSSHub Radar
  1. 打开RSSHub Radar设置:点击浏览器右上角的RSSHub Radar图标,然后点击设置。
  2. 添加自定义RSSHub服务器
    • 服务器地址:输入你在NAS上部署的RSSHub的IP地址和端口。

步骤四:测试

  1. 访问支持的网站:打开一个RSSHub Radar支持的网站。
  2. 检查RSSHub Radar图标:如果图标变成彩色,点击它。
  3. 查看RSS源:在弹出的列表中,你应该能看到来自你的NAS服务器的RSS源。

RSSHub Radar为什么没有提示显示自己部署的RSSHUB地址?

原因:
  1. 本地部署识别:如果某个网站在你自己部署的RSSHub服务上有对应的路由,RSSHub Radar会显示两个地址。
  2. 公共路由:对于只在公共RSSHub服务上有路由的网站,通常只会显示以https://docs.rsshub.app/开头的地址。
  3. 配置问题:如果RSSHub Radar没有正确配置你的本地RSSHub服务,可能只会显示公共地址。
  4. 缓存问题:RSSHub Radar可能会缓存之前的路由信息,导致显示不一致。
解决方案:
  1. 检查配置:确保你的RSSHub Radar设置中已经正确配置了你自己部署的RSSHub服务地址。
  2. 刷新缓存:尝试清除RSSHub Radar的缓存或重新加载页面。
  3. 更新路由信息:如果你自己部署的RSSHub服务添加了新的路由,确保更新了服务以让RSSHub Radar识别。
  4. 重启RSSHub Radar:有时重启扩展或浏览器可以解决问题。

RSSHub Radar访问密钥怎么设置,有什么用途?

用途:
  1. 身份验证:访问密钥用于验证用户身份,确保只有拥有密钥的用户能访问特定的RSSHub服务。
  2. 访问控制:通过密钥,RSSHub服务可以限制对某些资源的访问,提高安全性。
  3. 流量管理:密钥还可以用于流量控制,防止恶意访问和滥用资源。
设置方法:
  1. RSSHub服务端配置

    • 如果你自己部署了RSSHub,你可以在RSSHub的配置文件中设置访问密钥。
    • .env配置文件中,找到RSSHUB_ACCESS_KEY这一项,设置你的访问密钥。

    RSSHUB_ACCESS_KEY=your_access_key_here

    • 保存配置文件并重启RSSHub服务。
  2. 公共RSSHub服务

    • 公共RSSHub服务通常不提供访问密钥,或者需要你注册账户后生成。
  3. 第三方服务

    • 如果你通过第三方服务使用RSSHub(如RSSHub提供商),通常会在你的账户设置或者API设置中提供访问密钥。
使用方法:
  1. 打开RSSHub Radar设置:点击浏览器扩展图标,然后进入设置。
  2. 输入访问密钥:在“访问密钥”或类似的字段中输入你的密钥。

5.RSSHub 有哪些使用场景?

场景一:跟踪多个新闻网站的最新文章

问题:

你想每天查看几个不同的新闻网站,但打开每个网站太麻烦。

实现过程:
  1. 安装RSS阅读器:首先,你需要一个RSS阅读器,比如Feedly。
  2. 找到RSSHub提供的新闻网站RSS源:访问RSSHub网站,找到你想跟踪的新闻网站的RSS源链接。
  3. 添加到RSS阅读器:复制这个链接,然后在Feedly里添加新的源。
  4. 阅读更新:现在,每当这些网站有新文章,Feedly会自动更新。

场景二:跟踪YouTube频道

问题:

你想知道某个YouTube频道是否上传了新视频,但不想每次都打开YouTube检查。

实现过程:
  1. 安装RSS阅读器:如果你还没有,安装一个RSS阅读器。
  2. 找到RSSHub提供的YouTube频道RSS源:在RSSHub网站上找到YouTube部分,按照说明获取频道的RSS源链接。
  3. 添加到RSS阅读器:在你的RSS阅读器中添加这个新链接。
  4. 获取更新:每当该频道有新视频,你的RSS阅读器会自动通知你。

场景三:监控价格变动

问题:

你想购买某个产品,但希望在价格下降时购买。

实现过程:
  1. 安装RSS阅读器:同上。
  2. 找到RSSHub提供的电商网站RSS源:在RSSHub找到支持的电商网站。
  3. 定制RSS源:按照RSSHub的说明,输入你想监控的产品信息,获取RSS源链接。
  4. 添加到RSS阅读器并设置提醒:这一步非常重要,因为你需要实时知道价格变动。
  5. 购买:一旦价格下降,你会收到通知,然后就可以购买了。

6. 总结

RSSHub不仅能让你的信息获取更加高效,还能让你享受到“定制”的乐趣。如果你还没有尝试过RSSHub,那么现在就是最好的时机!

Coin Marketplace

STEEM 0.27
TRX 0.12
JST 0.031
BTC 57908.48
ETH 2913.17
USDT 1.00
SBD 3.61