和 Pocket 說再見:拿回你的「稍後讀」控制權

編注:

Mozilla 宣佈將於 2025 年 7 月 8 日關閉稍後讀服務 Pocket。

本文是一篇發佈於 2024 年 6 月的 #自力更生 徵文入圍投稿,彼時作者曾在文中提到過 Pocket 在國內的訪問穩定性、數據導出等問題,沒想一語成讖,Pocket 的服務和運營在不到一年的時間裡迅速收縮、停滯並最終迎來終結。

自部署又一次在「稍後讀」領域迎來了它的魅力時刻。如果你也需要:

數據本地,完全可控

跨越多設備,且多端體驗一致

內容解析速度出色

的稍後讀服務,Readeck 作爲一款兼具了書籤功能的自部署方案也許值得你在這個特別的日子裡多瞭解一點。

作爲喜歡閱讀互聯網長文的「上世代互聯網遺老」,我一直保持着一個和現在互聯網快消時代格格不入的愛好:偏愛長內容,這包括了我喜歡觀看哪些具有豐富知識內容的長視頻,收聽播客節目以及閱讀長篇的文章。尤其是長篇文章,往往是在我在碎片化的時間瀏覽公衆號或者 RSS 訂閱時,然後就會把這篇長文發到我的稍後讀應用或者推送到我的 Kindle 郵箱中,等晚上坐到書桌前仔細深度閱讀。

因此我一直都非常留意各家的稍後讀/書籤服務,從最早的 instapaper、Pocket 到後來使用 Kindle 的郵箱推送等都有嘗試,只不過在國內這個互聯網環境中難免會遇到網絡訪問穩定性的問題——畢竟這幾種稍後讀服務都來自國外開發商,經常會遇到發送微信公衆號文章後重排版出錯的情況,就更別提數據保留的安全性問題了。

既然我已經在家中部署了 NAS,秉承「將數據保留在自己手上」的宗旨,我決定將稍後讀/書籤服務也進行自部署。而考慮到我實際的使用情況,我自部署的稍後讀/書籤服務需要滿足以下幾點:

支持自部署,且部署方式容易。

可以在手機端/桌面端進行進行閱讀。

可以在不同的平臺將文章/網頁發送到稍後讀服務中。

解析處理網頁內容的速度要很快。

而滿足以上要求的就剩下了這款名爲 Readeck 稍後讀/書籤服務。

▍Readeck:功能全面且支持自部署的稍後讀/書籤服務

安裝 Readeck 服務端

和其他自部署的服務一樣,作爲一款自部署優先服務,Readeck 官方直接就提供了 Docker 的部署方式,當然考慮到我自己家中的 NAS 是羣暉的 DS218+,官方 Docker 套件本身功能比較弱,因此我還額外使用 Portainer 這個可視化的容器部署工具來進行部署,這樣做的另一個好處就是,即便你的 NAS 不是羣暉,只要支持容器,也可以採用類似的辦法做部署。

我這裡依舊以羣暉爲參照,首先打開羣暉的 File Station 中的 docker 目錄,在目錄下創建一個新文件夾並將其命名爲 readeck(全部是小寫字母)。

然後在新創建的這個readeck 文件夾裡面,再分別創建data以及db兩個文件夾。這兩個文件夾後面用來存儲服務中所產生的數據。

接下來我們就打開 Portainer 來進行服務容器的部署,這裡打開並登錄 Portainer,然後從左側邊欄中點擊 Stacks,然後點擊頁面右上角的 Add Stack來添加。

在新創建的 Stack 的 Name 裡面填寫readeck,然後在 Build method 這裡選擇 Web editor,接着在下面內容直接複製到編輯器中:

按照上面填寫完成後,這裡點擊下方的「Deploy the stack」來部署容器,然後等待出現容器列表就表示部署成功了。

P.S:有關 docker 文件存儲路徑也需要留意,如果你的 NAS 有多個卷,最好能夠覈對自己創建文件夾的絕對路徑,從而避免出錯。

配置 Readeck

當容器正式啓動後,這時打開瀏覽器並訪問:http://你的 NAS 地址:4522 ,如果可以訪問到Readeck 的登錄頁面就表示完全部署成功了,如果你和我一樣,是部署到本地的 NAS 中的,那麼如果想要從外網訪問還需要通過 ddns 或者內網穿透的方式將服務暴露到公網中,這裡我就不過多贅述了。

在註冊頁面中首先輸入你未來需要登錄 Readeck 的賬號和密碼,最後點擊 Finish installation 來完成最後的註冊。登錄後你就可以看到 readeck 的列表頁面,這就表示你已經成功完成了全部的安裝工作。而既然是一款稍後讀應用,那麼自然少不了就是測試一下他的閱讀模式的處理能力,這裡我直接在 Readeck 上點擊上方添加地址處貼上少數派的某篇文章的鏈接,然後點擊「Save Link」來保存鏈接。

這個保存並處理的過程非常快,稍等片刻 Readeck 就會完成處理並添加好作者以及標題,甚至還會自動生成稍後讀文章卡片的封面圖,而點擊進去後可以看出會將一些無用的元素都進行清理,保留成適合手機進行閱讀的「閱讀模式」的效果。同時你還可以對閱讀的效果進行設置,比如選擇字體、字號以及對行高進行設置。

同時你還可以對不同的文章打上特定的標籤,方便的進行進一步的分類歸檔操作,而在晚間閱讀時如果你覺得背景比較刺眼,也可以點擊側欄中的更換主題來切換成暗色模式。

▍Readeck 進階用法:用更簡單的方式發送文章

Readeck 服務部署完畢並且進行了基礎設置,那麼接下來我們發送需要稍後讀的文章/網頁了,畢竟如果每一次添加稍後讀的文章鏈接都需要打開 readeck 並點擊「Save Link」顯然非常繁瑣,事實上 Readeck 提供了和很多商業服務類似的方式,可以讓我們非常方便的將看到的文章發送到 Readeck 中。

使用瀏覽器的擴展程序發送文章/鏈接

如果你使用的是桌面瀏覽器來瀏覽網頁內容,那麼最爲簡單的辦法就是通過瀏覽器的擴展程序,Readeck 提供了 Chrome/Firefox 兩個主流瀏覽器的擴展程序,這裡只需要在相應的擴展程度市場中下載安裝,然後點擊擴展程序後輸入你的賬戶名、密碼以及服務的具體地址,然後點擊 Login 就可以完成登錄綁定操作。

登錄完成後,當你需要將正在瀏覽的網頁發送到 Readeck 時,就只需要點擊擴展程序欄中的 Readeck 圖標,然後等待其完成保存即可。如果不放心你還可以登錄 Readeck 中,看看你點擊發送的這篇文章是否已經被收藏進來了。

在 iOS 上使用快捷指令來收藏文章

我習慣在手機端瀏覽器網頁,會將合適的內容也會將其發送到稍後讀中,這同樣在 Readeck 中也可以這樣操作,只不過由於 Readeck 並沒有提供手機客戶端,因此這裡需要自己通過第三方工具來實現,至於 iOS 上則是通過快捷指令來進行操作。

不過在使用快捷指令操作之前,我們首先需要爲這些操作來創建新的 API 密鑰,這裡先登錄你的 Readeck 服務,然後點擊 Profile - API Token,然後點擊「Create a new API token」來創建一個新的 API Token,這裡只需要將生成的「Your API token」下面的字符串保留下來備用即可。

接下來,使用 iOS 上的瀏覽器打開這個地址,然後點擊「Download Shortcut」保存到你的快捷指令集中,接下來點擊「Send Page To Readeck」這個快捷指令卡片的編輯按鈕,在第一個註釋下方的文本框中填寫 Readeck 的公網訪問地址,在第二個註釋下方的文本框中,把剛纔保存的 API Token 複製進去,然後點擊右上角的完成來保存。

那麼如何發文章到 Readeck 呢?當你使用 Safari 瀏覽器訪問網址時,點擊下方的分享按鈕並在分享菜單中選擇 Send Page To Readeck,然後等待快捷指令跑完即可,這時候你再訪問 Readeck 就會發現剛纔在 Safari 瀏覽的網頁已經被髮送到 Readeck 中了。

在 Android 上使用 HTTP Request Shortcuts 來收藏文章

相比於 iOS 上有系統級別的快捷指令,Android 上一直以來都沒有系統級別的「腳本工具」,因此要想實現類似的操作將網頁添加到 Readeck 就只能依賴第三方工具了,這裡我們就需要用到這個 HTTP Request Shortcuts 這款應用來編寫一個添加文章的腳本。

首先還是打開 HTTP Request Shortcuts,首先點擊右上角的漢堡菜單,點擊「變量」來創建三個變量:

第一個變量叫做readeck_shared_url,變量類型爲「輸入文本」,需要注意的是這個變量的高級設置裡面需要勾選「允許分享」,要從分享獲得的數據爲「僅文本」。

第二個變量叫做readeck_url,變量類型是「常量」,這裡需要填寫值,這個值就是你部署的 Readeck 服務的公網地址。

第三個變量叫做readeck_token,變量類型是「常量」,這裡也需要填寫值,這個值就是前面我們從 readeck 的 API Token 中保存下來的 Token 值。

緊接着,點擊主頁右下角的 +然後選擇「從頭創建」來創建一個新的快捷方式,這裡名稱你可以隨便命名,可以像我一樣將其命名爲「Add To Readeck」,然後在基本設置中,選擇方法爲Post,url 這裡輸入值{readeck_url}/api/bookmarks。

在請求體/請求參數這裡,這裡設置返回體類型是參數(x-www-form-urlencoded),下方的參數爲url,值是{readeck_shared_url}。

在認證這裡,選擇認證方式爲「令牌認證」,令牌爲{readeck_token}。全部編輯好之後點擊右上角的對勾確認保存,至此發送網頁腳本就正式編輯完成了。

那麼怎麼使用呢?這裡只需要使用瀏覽器打開一篇文章,然後點擊分享來展開 Android 系統的原生分享菜單,這裡就可以看到剛剛我們創建的這個名爲「Add To Readeck」的圖標,點擊後會提示該腳本已經執行,只要不報錯就表示網頁已經成功提交到 Readeck 中了,如果不確定可以到 Readeck 的文章列表中查看是否已經發送成功了。

▍Readeck 進階用法2:在不同的平臺使用不同的姿勢閱讀

既然文章都已經上傳到 Readeck 中了,那麼該如何進行閱讀呢?和其他商業產品不同的是 Readeck 並沒有推出專門的閱讀客戶端,不過好在 Readeck 提供了很多豐富的閱讀方式,體驗上還是相當不錯的。

Readeck 的準官方客戶端:PWA 應用

如果只是用來閱讀,那麼實際上使用 Web 網頁就完全夠用,而 Readeck 也已經支持以 PWA 的形式進行安裝,那麼最爲簡單的方式就是將其安裝成 PWA 應用——使用瀏覽器訪問你部署的 Readeck 服務,桌面端點擊地址欄的安裝來將其安裝成 PWA 應用,至於移動端也是類似。而整體體驗下來個人覺得已經足夠滿足使用需求——尤其是 Readeck 的網頁端也針對移動設備進行了優化,閱讀沉浸感還是很不錯的。

在移動端通過支持 OPDS 的閱讀應用來閱讀

Readeck 原生支持 OPDS——通過訪問路徑的形式可以將保存的稍後讀文章以電子書的形式發佈,這樣我們看文章的體驗就會和通過電子書類似,那麼如果你平時習慣在手機上通過閱讀應用來看書,那麼就可以將 Readeck 添加成書庫在應用中閱讀。

這裡,iOS 上可以使用這個名爲 cantook 的應用來實現,打開這款應用並點擊導航欄中的「書店」同時點擊右上角的添加,然後再選擇「手動添加書店」,在彈出的新建目錄名稱和鏈接對話框中,填寫目錄名稱(這裡隨便寫)以及目錄鏈接(https://你的書庫地址/opds)後,然後點擊添加,這時候再點擊書店中的新保存的這個新書店,根據提示輸入你的 readeck 的賬戶和密碼,就可以順利進入到目錄中了,只不過進入閱讀後你會發現還是訪問的是 Readeck 的網頁端而已。至於 Android 上,支持 OPDS 目錄的閱讀應用也有不少,比如靜讀天下也支持掛載 OPDS 目錄,這裡我就不過多的贅述了。

▍總結

經過一段時間的試用,我正式將自部署的 Readeck 作爲我的主要稍後讀服務,並且實現了我接觸的場景下全平臺的發送網址/閱讀解決方案,雖然相比商業化的稍後讀服務需要自己手動配置多種服務,但由於是自部署的服務,數據安全和網絡訪問上其實要比商業化的服務要更爲可靠,如果你和我一樣之前使用的是海外的商業化的稍後讀服務,不妨嘗試自己部署 Readeck讓數據掌握在自己手中。

https://sspai.com/post/89289?utm_source=wechat&utm_medium=social

作者:化學心情下2

責編:廣陵止息