智慧教育平台下載工具 KnowledgeGrab,課本影片離線收進本機

KnowledgeGrab 是把中國國家中小學智慧教育平台資源離線化的開源工具:電子課本存成 PDF、加密串流的課程影片解開合成 MP4,v2.3.0 起貼目錄頁連結就能列出整冊課時批次下載。它開的是平台官方登入視窗、令牌只存本機,重演的是播放器本來就走的金鑰流程而非破解;但平台帳號註冊、簡體內容屬性與資源版權邊界,動手前要先看清楚。

用 AI 摘要這篇文章:

中國官方的「國家中小學智慧教育平台」(basic.smartedu.cn)把電子課本、同步課堂影片與課件集中放在網站上,整套體驗卻離不開網路連線:教材要在網頁裡翻,影片要在平台播放器裡播,平台沒有提供整批打包離線的官方出口。老師想備課前先把一整冊教材存到教室電腦、家長想讓孩子通勤路上看課程影片,這類需求平台自己沒有給答案。KnowledgeGrab 是一個補上這塊的開源桌面工具:貼上教材或課程頁的連結,它把電子課本存成 PDF、把加密串流的課程影片解開合成 MP4,v2.3.0 起還能貼一個目錄頁連結就列出整冊所有課時,勾一勾全部丟進下載佇列。

它的完整原始碼與官方文件都讀過一輪,這篇整理它實際怎麼運作、帳號這關怎麼過,以及決定裝不裝之前該先看的邊界。先講結論:它開的是平台自己的官方登入視窗、重演的是網頁播放器播放時本來就要走的金鑰流程,所以它跟「破解工具」是兩回事;但課本下載需要平台帳號、令牌約一週就要重抓、資源版權屬於原出版機構這幾條線,它不會替你把關。

平台上放什麼,它就抓什麼

先認識標的。國家中小學智慧教育平台是中國教育部體系的官方教育資源站,資源以中國課綱為本:小學到高中各學段的電子課本(人教版等各版本)、同步課堂的教學影片與課件,清單裡也能看到特殊教育與五四學制等分類。這些資源集中在平台網站上供人觀看,平台本身不擋訪客,瀏覽器直接開就連得上,境外能不能順利看完、註冊,則是另一回事,後面邊界段會回到這題。

KnowledgeGrab 抓的就是這個範圍內的東西。專案在 GitHub 上以 MIT 授權開源,截至 2026 年 9 月約 550 顆星;技術上用 Tauri 包 Rust 後端與 Vue 3 前端。它的版本史有個斷層:2025 年 5 月出過 v1.0.x 初版後沈寂了一年多,2026 年 7 月中旬重啟開發,一個半月內從 v1.1.0 疊到 v2.3.0,重啟後 24 小時內一口氣連發三個版本,最新版在 8 月 31 日釋出。三大系統的安裝包都齊:macOS 的 Intel 與 Apple 晶片 dmg、Windows 的 x64 與 ARM 安裝程式加 msi、Linux 的 AppImage、deb 與 rpm,不需要自己編譯。

應用介面本身就照著平台的資源結構走。左側選單分成課本下載、課程與影片下載、下載管理、設定幾區;課本頁能按學段、學科、版本、年級層層篩選,側欄從小學、初中(含五四學制版本)、高中到特殊教育都照平台的分類走,教材卡片上有封面縮圖與觀看次數,選好之後單本下載,或按介面上的「批量下載」按鈕整批帶走。

KnowledgeGrab 課本下載頁:左側學段選單有小學、初中、五四學制、高中與特殊教育分類,主畫面為教材卡片清單與封面預覽彈窗,教材卡片附封面縮圖、觀看次數與下載按鈕,工具列上有批量下載按鈕Pin
課本下載頁按學段與學科層層篩選,教材卡片附封面預覽(圖片來源:KnowledgeGrab 官方文件截圖)
KnowledgeGrab 深色主題的主視窗:左側選單含首頁、課本下載、課程與影片下載、下載管理與設定,首頁狀態卡顯示下載路徑、登入令牌與 ffmpeg 三項配置就緒,開始下載區塊有課本下載與課程影片下載兩張功能卡片Pin
應用首頁的兩個入口:課本下載與課程影片下載(圖片來源:KnowledgeGrab 官方文件截圖)

課程這側的入口設計得更省事。v2.3.0 起,貼上同步課堂的目錄頁連結(網址含 syncClassroom 參數的那種)或整冊教材頁連結,應用會自動解析出該冊全部課時,列成清單讓你勾選,勾完一次解析、全部加進下載佇列,不用一課一課手動貼連結。單堂課程頁也能直接解析,把該頁的影片與課件一起抓下來。對要備整學期教材的人來說,這個入口把工作從幾十次複製貼上壓成貼一次連結、勾一次全選。

登入這關,走的是平台官方視窗

平台改版之後,電子課本資源搬到需要登入鑑權的伺服器上,所以現在要下載教材,必須提供有效的 Access Token。這是整個工具最值得看清楚的一段,它的做法寫在原始碼 login.rs 裡:按「登入平台自動取得」,應用會打開一個 basic.smartedu.cn 官方網址的內建視窗,你在那個官方頁面上正常登入,注入的腳本輪詢頁面的 localStorage,等平台自己寫入登入令牌後把它接走。原始碼註解明寫使用者憑證不會經過這個應用,帳號密碼是在平台自己的頁面輸入的,工具只收登入完成後的令牌。

令牌存在本機,官方文件說明效期約一週,過期就照同樣方式再登一次。不想用內建視窗的人也有手動路徑:照官方說明在瀏覽器的開發者工具主控台執行一段腳本,把令牌複製下來貼進設定頁,效果相同。下載途中令牌失效的處理也設計過:剩餘任務自動暫停,換好令牌之後在下載管理裡繼續,已下載的部分不會浪費。真的遇到 403 或 401 錯誤,代表令牌過期或失效,重抓令牌是唯一解,原始碼裡對這類錯誤直接標記失敗不重試,因為過期的令牌重試幾次都一樣。

這個設計跟常見下載器的登入牆是同一個課題的兩種答案。DataTool.vip 那類線上下載器把登入牆畫在自己網站上,匿名訪客連解析都被擋;KnowledgeGrab 則是把平台官方登入頁原窗嵌入,牆還是平台的那道牆,鑰匙還是你自己的帳號。

影片加密這關,重演的是播放器本來就走的流程

課程影片不是普通的 mp4 直鏈,而是 AES 加密的串流切片。這也是外界最容易誤解的一段,值得把原始碼 m3u8.rs 開頭的實作註解攤開來看。平台的金鑰取得是一套自訂的兩段式握手:先跟金鑰伺服器要一組隨機 nonce,用 nonce 加上金鑰編號算出一段 MD5 簽名,再拿簽名去換一把被 AES 加密包裹的金鑰,解開之後才是真正的 16 位元組內容金鑰,每個串流切片都是用這把鑰匙解開的。你在平台網頁上看影片時,瀏覽器裡的播放器也要走同一套流程才能播,差別只在播放器邊解邊播、用完即丟,工具則是解完存檔。

換句話說,這裡沒有繞過什麼保護機制,工具做的是把播放器會做的事做完然後留下結果。它跟繞過 Widevine 那類商業 DRM 的破解器是不同層級的東西:金鑰本來就會發給每一個登入觀看的使用者,工具沒有提取或偽造任何別人拿不到的資訊。這段判斷是從客戶端實作推得的,平台播放器的內部實作沒有公開原始碼可以逐行對照,但串流加密的結構就是如此運作的。

工程細節看得出這個專案不是玩具。所有下載統一丟進一個全域佇列排程,切換頁面不影響進行中的任務,暫停、繼續、失敗重試、刪除單一任務或清空記錄都在下載管理頁操作。影片切片併發下載 8 條、單一切片失敗重試 3 次;金鑰每次重新握手取得、不寫進磁碟;斷點續傳分兩種做法,課本這類靜態檔按位元組續傳,影片按已下載的切片續傳,應用重啟後未完成的任務標成中斷、一鍵接著下。影片解密後需要 ffmpeg 合成 MP4,在設定頁指向本機的 ffmpeg 執行檔即可,首頁的狀態卡會在進入首頁時顯示下載路徑、登入令牌與 ffmpeg 三項配置是否就緒。

KnowledgeGrab 淺色主題主視窗:首頁狀態卡綠色勾選顯示配置就緒可以開始下載,下方列出下載路徑、登入令牌與 ffmpeg 三項檢查狀態,右側為前往設定連結Pin
首頁狀態卡會先檢查下載路徑、登入令牌與 ffmpeg 是否就緒(圖片來源:KnowledgeGrab 官方文件截圖)

裝機與更新:三大系統都有包,macOS 要先過一道關

安裝本身不難,但 macOS 使用者會先撞到 Gatekeeper。應用未經 Apple 開發者簽署,第一次打開會被系統擋下,官方常見問題給的解法是在終端機執行 xattr 指令移除隔離屬性:

xattr -rd com.apple.quarantine /Applications/KnowledgeGrab.app

路徑按實際安裝位置調整。這道手續對所有未簽署的開源桌面應用都一樣,不是這個工具特有的問題,但它也提醒你:裝的是社群軟體,信任鏈是原始碼與你的自行檢視,不是商店審核。

應用內建自動更新,啟動時靜默檢查新版本、一鍵下載安裝。更新包放在 GitHub Releases 上,考量到部分網路環境連 GitHub 受限,設定頁可以自訂更新來源鏡像,官方文件直接示範了鏡像位址的填法。考慮到這個工具的目標資源與主要使用者都在中國,這個設計務實,也暗示了它預設的使用情境。

動手前先看的四個邊界

帳號能不能註冊,是動手前最該先確認的未知數。課本下載需要平台帳號,而平台的帳號體系以中國當地用戶為主,台灣手機號碼或信箱能不能走完註冊流程,目前沒有驗證資料,是未知數。建議先花十分鐘確認帳號可行,再考慮裝工具,否則裝了也只能下載不需要令牌的部分資源。

內容屬性是另一個要先想清楚的邊界。資源全部對應中國課綱與教材版本,簡體中文內容,介面也只有簡體中文(原始碼裡沒有任何多語系檔案)。對照台灣的課綱,這些教材比較接近「補充讀物」或「華語教學素材」,不是拿來對接學校進度的東西。想要離線收藏華語閱讀材料、教華語想找分級讀物、研究中國教材編排的人,素材價值確實存在。

版權與使用界線則是最該畫清楚的一條。電子課本與課程影片的著作權屬於原出版機構與平台方,工具下載的是這些內容的檔案,本身不改變授權狀態。離線自己看,重新散佈、上傳到別的地方、拿去營利則屬於不同層級的行為,界線畫在散佈,不在下載本身。有意思的是,應用內建了一頁免責聲明,但讀內容會發現那是一般性的資訊準確性免責(資訊僅供參考、風險自負之類),沒有觸及資源版權與使用範圍,這條線工具留給使用者自己守。同樣的道理在 yt-dlp 圖形介面那類工具也一樣成立:工具鏈開源是一回事,抓下來的內容能怎麼用是另一回事。同樣處理中國平台資源的工具我們介紹過幾次,小紅書影片下載器影片下載管理器面對的都是同一道題:個人保存沒人替你負責,散出去就是另一個法律層級。

平台改版風險是動態存在的一條。這種工具與平台之間是動態關係,沈寂期間累積了多個特定年級與冊次下載失敗的 issue,2026 年 7 月中旬維護者重啟開發時逐一回覆處理,截至 2026 年 9 月九個 issue 全數關閉;帳號令牌制也是平台改版後才加上的。反向說,2026 年 7 月重啟開發後一個半月就疊了九個版本,整冊批次下載這種大功能八月底才落地,維護節奏是跟著平台變化跑的。裝了之後遇到整批 403,先想到的應該是平台又改了什麼,等更新通常比自己瞎折騰快。

適合誰,以及第一步

整理下來,這個工具最適合的對象相當明確:需要離線使用中國官方教育資源的人。在中國課綱體系內備課的老師、帶孩子回頭看課程的家長、收藏華語教材的研究者與華語教師,它把平台沒有提供的離線出口補上了,而且工程品質與維護活躍度都看得到。反過來說,想要台灣課綱教材、期待免帳號一鍵抓、或需要繁體介面的人,它現在都給不了。

第一步很單純。先確認平台帳號註冊得下來,再到 Releases 頁下載對應系統的安裝包,macOS 使用者跑一次上面的 xattr 指令,設定頁指向本機 ffmpeg 之後,從應用裡的官方視窗登入平台,令牌自動接上,然後貼教材連結或整冊目錄頁連結開始下載。遇到 401 或 403,回設定頁重新登入一次,佇列會從中斷處接著走。

Sliven 褚崇名
Sliven 褚崇名

每日分享科技新知、免費資源以及 WordPress、虛擬主機相關主題,任何問題歡迎在科技月球下方留言,或是發送 Email 至 [email protected] 與我聯繫。

文章: 1272

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


Share to...