不支援 RSS 訂閱的網站,你可以用 RSSHub 搞定它
就我個人而言,無法割捨 RSS 的原因最重要的是以下兩點:
-
沒有遺漏地收取資訊——像少數派首頁新的文章、教務系統新的通知等,都是我不希望有遺漏的資訊。
-
集中地收取資訊——我是個很怕麻煩的的人,要我時不時地開啟微博、Twitter、Instagram、YouTube、嗶哩嗶哩……去翻看我所有關注的人有沒有更新,實在是一件痛苦的事。
RSS 服務就契合了這兩個需求,我只需要開啟閱讀器就能接收所有信息,而「未讀」標記則可以提醒我遺漏了哪些重要的資訊。
但 RSS 並不是完美無缺,一個最大的問題就是 RSS 從來都不是一個資訊釋出的主流方式,除了部分新聞類網站,大多數的網站都是缺少官方的 RSS 來源(比如以上列舉的大部分網站)。
不過問題的解決並不困難,我之前的方案是使用 ofollow,noindex" target="_blank">Huginn 、 Feed43 之類的工具,通過抓取網站頁面特定段落的更新,來生成 RSS 訂閱源。這些工具大多隻需要有一定的 HTML 和 Linux 基礎就能使用,但畢竟還有一定門檻,本文要介紹的就是將這一門檻抹平的新興工具—— RSSHub 。

RSSHub 訂閱源的製作
與 Huginn、Feed43 等工具類似,RSSHub 在大部分網站上也是通過抓取網頁的方式獲得訂閱源,不同的是在 RSSHub 中,已經完成了對抓取規則的編寫,只需要使用者簡單的編輯下地址即可。
比如我希望訂閱 YouTube 上 Linus Tech Tips 的視訊,我在網頁上找到 LTT 的使用者名稱是「LinusTechTips」,根據 RSSHub 的 官方文件 ,我只需要在 https://rsshub.app/youtube/user/
之後加上這個使用者名稱,即 https://rsshub.app/youtube/user/LinusTechTips
,一個訂閱源就製作完成了。

RSSHub 上目前提供各型別的、總計超過 100 個網站的訂閱源製作,而且隨著參與者隊伍的壯大,訂閱源的數量還在快速上升中。從社交媒體到教務通知、從程式跟新到氣象預警,只要你能想到的都會有不同的參與者開發完成。其中部分網站還提供多種訂閱方式,比如 YouTube 可以訂閱使用者和頻道、Telegram 可以訂閱頻道和貼紙包等等。
RSSHub 訂閱源的過濾
對於某些更新量較大的訂閱源,我們可能會希望剔除掉不需要的資訊,除開各類閱讀器提供的過濾選項,RSSHub 本身也提供各種過濾引數,只需要新增到訂閱源地址上即可。
比如,Pixiv 周排行榜每次都會推送前 30 名的作品,如果我只希望接收前 10 名的推送,只需要在訂閱源 https://rsshub.app/pixiv/ranking/week
之後加上 ?limit=10
這一引數即可。
再比如,我不想在 Pixiv 周排行榜中看到關於 miku 的作品,只需要在訂閱源後面加上 ?filterout=miku
這個引數,那就不會收到標題和描述裡帶有 miku 的推送。
其他的通用過濾引數和部分網站的專用過濾引數就不一一列舉了,不過要提的是部分引數不能同時使用,比如我們無法用 ?limit=10?filterout=miku
這一引數在只接收前 10 作品的同時過濾掉關於 miku 的作品,具體見 官方文件 。
RSSHub 的部署
開源專案的生存依賴作者的熱情和使用者的支援,穩定性當然是不如商業專案,如果有一天因為官方伺服器的關閉導致大量訂閱失效,也是件很苦惱的事。
所幸 RSSHub 是一個基於 Node.JS 開發的 專案 ,可以很輕鬆的部署在伺服器或是本地計算機上,這裡就不照搬 官方說明 了,現在 VPS 價格愈發親民,有能力的使用者完全可以手動部署在自己的伺服器上。
需要指出的是,如果想自建 RSSHub,那麼部分依賴 API 的訂閱源,比如 Disqus,就需要自己去申請 API 了。
後記
RSS 的使用者很容易染上無節制地增加訂閱源的習慣,尤其是學會使用訂閱源製作工具後,走馬觀花式地掃幾眼後,直接按下「全部已讀」變成常態。我個人認為如果希望保證 RSS 閱讀的體驗,就要在這方面加以剋制,避免自己的閱讀器中充斥大量混亂的資訊。
> 下載少數派客戶端、關注少數派公眾號 ,瞭解更多有趣的應用 :rocket: