RSSHub給不支持RSS網站製作RSS訂閱源-支持B站,知乎,微博,豆瓣,今日頭條

https://wzfou.com/rsshub/

爲了更快地蒐集整理自己需要的信息,我們經常會用到RSS訂閱,但是有一些高質量的網站,例如知乎、B站、微博、豆瓣、TG羣組、非死不可、推@特等,官方是不支持使用RSS訂閱的。之前我們分享過利用Huginn抓取任意網站RSS和微信公衆號更新,不過Huginn架設的難度比較大,適合愛折騰的用戶。

這篇文章來分享一下靈活性不如Huginn但是上手門檻低的RSSHub。RSSHub 是一個開源、簡單易用、易於擴展的 RSS 生成器,它可以給那些不支持RSS的網站生成 RSS 訂閱源,有了RSS訂閱源之後,接下來你就可以使用RSS閱讀器接收訂閱了。RSSHub 目前已適配數百家網站的上千項內容。

RSSHub不如Huginn靈活,原因在於它依賴於RSSHub既定的規則,當然你也可以自己設置規則,但是難度也不小。不過,經過這幾年的發展RSSHub支持的網站RSS已經非常多了,包括了社交媒體 、新媒體 、傳統媒體 、論壇 、博客 、 直播 、大學通知 、預報預警 、出行旅遊 、購物 、遊戲 、 政務消息 、科學期刊等。

RSSHub給不支持RSS網站製作RSS訂閱源-支持B站,知乎,微博,豆瓣,論壇

基本上市面上流行的網站,例如知乎、B站、微博、豆瓣、TG羣組、非死不可、推@特等全部可以使用RSSHub來訂閱,甚至細化到B站、豆瓣等分類、個人等專屬頁面以及一些私有內容,可以說RSSHub還是非常地強大的。更多的建站和實用工具,這裏還有:

  1. 瀏覽器遠程訪問VPS主機桌面-VPS主機一鍵安裝Linux桌面環境
  2. 分享八個優秀的免費PHP探針-實時檢測PHP信息,服務器運行和流量
  3. 自建ATS CDN系統-Apache Traffic Server一鍵安裝配置高性能的CDN節點

PS:更新記錄.

1、對於思維導圖重度用戶來說,如果不想付費購買昂貴的商業服務,可以自己搭建一個在線的思維導圖網站:自建免費在線思維導圖工具-用Docker安裝draw.io在線思維導圖程序。2021.3.29

2、平時經常要校對文本,以及有大量的文件需要在電腦和移動硬盤同步,可以試試這些免費的同步對比工具:八大免費的文件對比同步工具-免費文件對比分析與複製同步備份軟件。2021.3.24

一、RSSHub安裝與配置

RSSHub部署的難點在於首次安裝與配置,原因是RSSHub需要安裝在一臺VPS主機上,當然這對於經常建站的朋友或者有VPS操作經驗來說是一件非常簡單的事情。沒有VPS的朋友可以參考這個購買一個:VPS主機排行榜單

  1. 網站:https://rsshub.app/

1.1 快捷Docker部署

RSSHub官方提供了非常多的安裝方式,不過Docker部署的方式是最簡單和快捷的。怕代碼的朋友可以在自己的VPS主機上安裝寶塔面板:寶塔面板安裝與使用圖文教程

RSSHub安裝Docker

然後寶塔面板裏直接安裝Docker,如果想手動在VPS上部署Docker也簡單,直接參考Docker官網,以下命令是基於Ubuntu系統的演示,如果你是Debian參考:安裝好Docker,其它的請參考官網:

  1. 安裝 Docker CE (社區版):https://docs.docker.com/install/linux/docker-ce/ubuntu/
  2. 安裝 Docker Compose:https://docs.docker.com/compose/install/#install-compose

Ubuntu系統安裝Docker CE 如下:

sudo apt-get remove docker docker-engine docker.io containerd runc
 
sudo apt-get update
 
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
 
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
 
#測試一下有沒有成功
sudo apt-key fingerprint 0EBFCD88
#有以下反饋就表示成功
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) <docker@docker.com>
sub rsa4096 2017-02-22 [S]
 
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
 
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
 
#驗證一下是不是正確安裝
sudo docker run hello-world
#有以下反饋就表示正確安裝
root@localhost:~# sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
0e03bdcc26d7: Pull complete
Digest: sha256:4cf9c47f86df71d48364001ede3a4fcd85ae80ce02ebad74156906caff5378bc
Status: Downloaded newer image for hello-world:latest
 
Hello from Docker!
This message shows that your installation appears to be working correctly.
 
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
 
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
 
Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/
 
For more examples and ideas, visit:
https://docs.docker.com/get-started/

Ubuntu系統安裝 Docker Compose如下:

#安裝 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
 
sudo chmod +x /usr/local/bin/docker-compose
 
#檢測一下是不是成功安裝
docker-compose --version

Docker命令安裝完成後,接下來就是安裝RSSHub了,直接執行以下命令:

docker pull diygod/rsshub
docker run -d --name rsshub -p 1200:1200 diygod/rsshub

RSSHub安裝命令

完成後你就可以打開你的IP:1200看到RSSHub的界面了。

RSSHub打開IP

1.2 綁定域名與SSL

不喜歡純IP的話,我們可以給RSSHub綁定自己的域名並增加SSL證書。如果使用寶塔面板,你直接在後臺添加網站,做好DNS解析,綁定自己的域名。

RSSHub綁定域名

然後在後臺給域名申請好SSL證書。

RSSHub申請SSL

最後,直接在寶塔面板的網站管理中添加反代即可。如下圖:

RSSHub添加反代

使用Oneinstack或者LNMP一鍵包的朋友使用命令添加虛擬機或者綁定好域名,然後添加反向代@理。反向配置方法和Bitwarden自建密碼存儲系統圖文教程綁定域名反代類似。

現在,打開你的域名就可以成功訪問到RSSHub了。

RSSHub成功訂閱

二、RSSHub製作RSS源

2.1 RSSHub訂閱知乎

#知乎熱榜,官方舉例: https://rsshub.app/zhihu/hotlist  ,替換路由: /zhihu/hotlist 。挖站否製作的就是:https://loco.wzfou.me/zhihu/hotlist。

RSSHub訂閱知乎

訂閱效果如下:

RSSHub訂閱知乎成功

2.2 RSSHub訂閱B站

#B站番劇,官方舉例: https://rsshub.app/bilibili/bangumi/media/9192  ,替換路由: /bilibili/bangumi/media/:mediaid ,即番劇主頁 URL 中獲取番劇媒體 id, 然後替換一下就行了。挖站否製作的就是:https://loco.wzfou.com/bilibili/bangumi/media/9192

訂閱效果如下(可以直接在RSS閱讀器裏直接觀看視頻):

RSSHub訂閱B站

2.3 RSSHub訂閱微博

#微博,官方舉例: https://rsshub.app/weibo/user/1195230310  ,替換路由: /weibo/user/:uid/:routeParams? ,挖站否製作的就是:https://loco.wzfou.me/weibo/user/1195230310。

RSSHub訂閱微博

訂閱效果如下圖:

RSSHub完成訂閱微博

三、RSSHub支持的RSS

這裏列出一些常用的網站使用RSSHub製作RSS訂閱源的方法,其它的網站請參考官網。

3.1 bilibili

#番劇

舉例: https://rsshub.app/bilibili/bangumi/media/9192 

路由: /bilibili/bangumi/media/:mediaid

參數:

mediaid, 必選 –
番劇媒體 id, 番劇主頁 URL 中獲取

#用戶追番列表

舉例: https://rsshub.app/bilibili/user/bangumi/208259 

路由: /bilibili/user/bangumi/:uid/:type?

參數:

uid, 必選 –
用戶 id

type, 可選 –
1爲番,2爲劇,留空爲1

#UP 主投稿

舉例: https://rsshub.app/bilibili/user/video/2267573 

路由: /bilibili/user/video/:uid/:disableEmbed?

參數:

uid, 必選 –
用戶 id, 可在 UP 主主頁中找到

disableEmbed, 可選 –
默認爲開啓內嵌視頻, 任意值爲關閉

#UP 主專欄

舉例: https://rsshub.app/bilibili/user/article/334958638 

路由: /bilibili/user/article/:uid

參數:

uid, 必選 –
用戶 id, 可在 UP 主主頁中找到

#UP 主動態

舉例: https://rsshub.app/bilibili/user/dynamic/2267573 

路由: /bilibili/user/dynamic/:uid/:disableEmbed?

參數:

uid, 必選 –
用戶 id, 可在 UP 主主頁中找到

disableEmbed, 可選 –
默認爲開啓內嵌視頻, 任意值爲關閉

#UP 主頻道

舉例: https://rsshub.app/bilibili/user/channel/142821407/49017 

路由: /bilibili/user/channel/:uid/:cid/:disableEmbed?

參數:

uid, 必選 –
用戶 id, 可在 UP 主主頁中找到

cid, 必選 –
頻道 id, 可在頻道的 URL 中找到

disableEmbed, 可選 –
默認爲開啓內嵌視頻, 任意值爲關閉

3.2 Telegram

#頻道

舉例: https://rsshub.app/telegram/channel/awesomeDIYgod/%23DIYgod的豆瓣動態 

路由: /telegram/channel/:username/:searchQuery?

參數:

username, 必選 –
頻道 username

searchQuery, 可選 –
搜索關鍵詞, 如需搜索 tag 請用 %23 替代 #

3.3 豆瓣

#正在上映的電影

舉例: https://rsshub.app/douban/movie/playing 

路由: /douban/movie/playing

參數: 無

#正在上映的高分電影

舉例: https://rsshub.app/douban/movie/playing/7.5 

路由: /douban/movie/playing/:score

參數:

score, 必選 –
返回大於等於這個分數的電影

#即將上映的電影

舉例: https://rsshub.app/douban/movie/later 

路由: /douban/movie/later

參數: 無

#北美票房榜

舉例: https://rsshub.app/douban/movie/ustop 

路由: /douban/movie/ustop

參數: 無

#一週口碑榜

舉例: https://rsshub.app/douban/movie/weekly 

路由: /douban/movie/weekly/:type?

參數:

type, 可選 –
分類,可在榜單頁 URL 中找到,默認爲一週口碑電影榜

一週口碑電影榜:movie_weekly_best
一週口碑劇集榜:tv_weekly_best
華語口碑劇集榜 :tv_chinese_best_weekly

#豆瓣電影分類

舉例: https://rsshub.app/douban/movie/classification/R/7.5/Netflix,劇情,2020 

路由: /douban/movie/classification/:sort?/:score?/:tags?

參數:

sort, 可選 –
排序方式,默認爲U

score, 可選 –
最低評分,默認不限制

tags, 可選 –
分類標籤,多個標籤之間用英文逗號分隔,常見的標籤到豆瓣電影的分類頁面查看,支持自定義標籤

排序方式可選值如下

近期熱門U
標記最多T
評分最高S
最近上映R

#豆瓣電影人

舉例: https://rsshub.app/douban/celebrity/1274261 

路由: /douban/celebrity/:id/:sort?

參數:

id, 必選 –
電影人 id

sort, 可選 –
排序方式,缺省爲 time(時間排序),可爲 vote (評價排序)

#豆瓣小組

舉例: https://rsshub.app/douban/group/camera 

路由: /douban/group/:groupid

參數:

groupid, 必選 –
豆瓣小組的 id

#瀏覽發現

舉例: https://rsshub.app/douban/explore 

路由: /douban/explore

參數: 無

#瀏覽發現分欄目

舉例: https://rsshub.app/douban/explore/column/2 

路由: /douban/explore_column/:id

參數:

id, 必選 –
分欄目id

#新書速遞

舉例: https://rsshub.app/douban/book/latest 

路由: douban/book/latest

參數: 無

3.4 簡書

#首頁

舉例: https://rsshub.app/jianshu/home 

路由: /jianshu/home

參數: 無

#熱門

舉例: https://rsshub.app/jianshu/trending/weekly 

路由: /jianshu/trending/:timeframe

參數:

timeframe, 必選 –
按周 weekly 或 按月 monthly

#專題

舉例: https://rsshub.app/jianshu/collection/xYuZYD 

路由: /jianshu/collection/:id

參數:

id, 必選 –
專題 id, 可在專題頁 URL 中找到

#作者

舉例: https://rsshub.app/jianshu/user/yZq3ZV 

路由: /jianshu/user/:id

參數:

id, 必選 –
作者 id, 可在作者主頁 URL 中找到

3.5 微博

對於微博內容,在 routeParams 參數中以 query string 格式指定選項,可以控制輸出的樣式 

#博主

舉例: https://rsshub.app/weibo/user/1195230310 

路由: /weibo/user/:uid/:routeParams?

參數:

uid, 必選 –
用戶 id, 博主主頁打開控制檯執行 $CONFIG.oid 獲取

routeParams, 可選 –
額外參數;請參閱上面的說明和表格;特別地,當 routeParams=1 時開啓微博視頻顯示

部分博主僅登錄可見,不支持訂閱,可以通過打開 https://m.weibo.cn/u/:uid 驗證

#關鍵詞

舉例: https://rsshub.app/weibo/keyword/DIYgod 

路由: /weibo/keyword/:keyword/:routeParams?

參數:

keyword, 必選 –
你想訂閱的微博關鍵詞

routeParams, 可選 –
額外參數;請參閱上面的說明和表格

#熱搜榜

舉例: https://rsshub.app/weibo/search/hot 

路由: /weibo/search/hot

參數: 無

#超話

舉例: https://rsshub.app/weibo/super_index/1008084989d223732bf6f02f75ea30efad58a9 

路由: /weibo/super_index/:id/:routeParams?

參數:

id, 必選 –
超話ID

routeParams, 可選 –
額外參數;請參閱上面的說明和表格

#個人時間線

舉例: https://rsshub.app/weibo/timeline/3306934123 

路由: /weibo/timeline/:uid/:feature?

參數:

uid, 必選 –
用戶的uid

feature, 可選 –
過濾類型ID,0:全部、1:原創、2:圖片、3:視頻、4:音樂,默認爲0。注意

需要對應用戶打開頁面進行授權生成 token 才能生成內容

自部署需要申請並配置微博 key,具體見部署文檔

3.6 知乎

#收藏夾

舉例: https://rsshub.app/zhihu/collection/26444956 

路由: /zhihu/collection/:id

參數:

id, 必選 –
收藏夾 id, 可在收藏夾頁面 URL 中找到

#用戶動態

舉例: https://rsshub.app/zhihu/people/activities/diygod 

路由: /zhihu/people/activities/:id

參數:

id, 必選 –
作者 id, 可在用戶主頁 URL 中找到

#用戶回答

舉例: https://rsshub.app/zhihu/people/answers/diygod 

路由: /zhihu/people/answers/:id

參數:

id, 必選 –
作者 id, 可在用戶主頁 URL 中找到

#用戶文章

舉例: https://rsshub.app/zhihu/people/posts/dcjanus 

路由: /zhihu/people/posts/:id

參數:

id, 必選 –
作者 id, 可在用戶主頁 URL 中找到

#專欄

舉例: https://rsshub.app/zhihu/zhuanlan/googledevelopers 

路由: /zhihu/zhuanlan/:id

參數:

id, 必選 –
專欄 id, 可在專欄主頁 URL 中找到

#知乎日報

舉例: https://rsshub.app/zhihu/daily 

路由: /zhihu/daily

參數: 無

#知乎日報 – 合集

舉例: https://rsshub.app/zhihu/daily/section/2 

路由: /zhihu/daily/section/:sectionId

參數:

sectionId, 必選 –
合集 id, 可在 https://news-at.zhihu.com/api/7/sections 找到

#知乎熱榜

舉例: https://rsshub.app/zhihu/hotlist 

路由: /zhihu/hotlist

參數: 無

#知乎分類熱榜

舉例: https://rsshub.app/zhihu/hot 

路由: /zhihu/hot/:category?

參數:

category, 可選 –
分類,見下表,默認爲全站

3.7 今日頭條

#關鍵詞

舉例: https://rsshub.app/jinritoutiao/keyword/AI 

路由: /jinritoutiao/keyword/:keyword

參數:

keyword, 必選 –
關鍵詞

3.8 V2EX

#最熱 / 最新主題

舉例: https://rsshub.app/v2ex/topics/latest 

路由: /v2ex/topics/:type

參數:

type, 必選 –
hot 或 latest

#帖子

舉例: https://rsshub.app/v2ex/post/584403 

路由: /v2ex/post/:postid

參數:

postid, 必選 –
帖子ID,在 URL 可以找到

#標籤

舉例: https://rsshub.app/v2ex/tab/hot 

路由: /v2ex/tab/:tabid

參數:

tabid, 必選 –
tab標籤ID,在 URL 可以找到

四、總結

RSSHub對於RSS的重度用戶是非常有用的,尤其是可以強制將那些不提供RSS訂閱源的網站輸出RSS內容。有了RSSHub後還得有一個免費的RSS閱讀器,自建RSS無疑是最有保障的,參考:自建RSS閱讀器Tiny Tiny RSS安裝和配置

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章