微博/Twitter同步到博客瞬间方案-RSSHub

微博/Twitter同步到博客瞬间方案-RSSHub

💡 原文中文,约5900字,阅读约需14分钟。
📝

内容提要

本文介绍如何为Hexo静态博客添加“瞬间”页面,通过RSSHub将Twitter等社交平台内容同步为JSON,并利用GitHub Action定时更新。步骤包括生成RSSHub链接、创建页面及编写JS/CSS、缓存JSON数据、部署网站。方案兼容多平台,配置简单,但同步有延迟且受反爬限制。

🔎

延伸解读

方案核心:RSSHub 作为数据桥梁

本方案的核心是利用 RSSHub 将 Twitter 等社交平台的内容转换为通用 JSON 格式,再通过命令行或 GitHub Action 定时拉取并缓存到本地。这种设计使得方案不局限于单一平台,微博、小红书、Telegram 等 RSSHub 支持的数据源均可复用同一套代码,只需修改 URL 和存储路径即可。

自动化部署的注意事项

作者推荐使用 GitHub Action 实现每小时自动同步,但需注意工作流中加入了 JSON 有效性检查,避免因 RSSHub 返回错误数据导致页面异常。同时,GitHub Action 的定时任务存在延迟,且免费版有执行时长限制,实际同步频率可能低于设定值。手动部署时,可参考文中的 deploy.bat 脚本,但需确保 curl 命令在目标环境中可用。

数据源限制与反爬风险

文章明确指出,Twitter、知乎、微博等平台反爬严重,RSSHub 公共实例通常只能抓取最新 20 条内容,且 RSSHub 自身有缓存,导致同步存在明显延迟。若需更完整或更及时的数据,可能需要私有化部署 RSSHub,但这会增加维护成本。读者在采用此方案前应评估自身对数据实时性和完整性的需求。

Q&A

如何将Twitter内容同步到Hexo博客的“瞬间”页面?

通过RSSHub生成Twitter用户的JSON订阅链接,然后在Hexo中创建“瞬间”页面,编写JS和CSS来渲染JSON数据,最后使用GitHub Action定时抓取JSON并部署。

RSSHub链接如何生成JSON格式?

在RSSHub网站选择数据源类型,定制URL后在末尾添加.json,例如https://rsshub.app/twitter/user/_Dorad.json,即可返回JSON格式数据。

在Hexo中如何创建“瞬间”页面?

使用命令hexo new page mood创建页面,然后在mood.md中添加HTML和脚本引用,并在mood文件夹下创建index.js和index.css文件,分别存放渲染逻辑和样式。

🏷️

标签

➡️

继续阅读