繁中

開源「自託管網絡歸檔」工具

什麼是ArchiveBox?

ArchiveBox是一個開源、自託管的Web存檔解決方案,它幫助個人或組織保存網絡內容以供離線瀏覽,並確保長期數據可訪問性

目標是允許用戶主動保存他們關心的網絡內容,以避免由於連結故障、內容更改或服務離線而丟失重要信息。可以存檔:書籤、社交媒體內容(例如Facebook照片、YouTube視頻)、研究論文、法律證據等。

核心功能和技術特點

各種輸入方法

您可以從多個來源輸入要保存到ArchiveBox中的內容,包括:

  • 個別URL計算的
  • 瀏覽器書籤或歷史記錄
  • RSS提要
  • 袖珍、插板和其他收集服務

自動抓取和保存多種格式的內容

ArchiveBox為每個頁面生成多種存檔格式,例如:

  • 原始HTML、SingleFile HTML、屏幕截圖PNG、PDF、WARC等
  • 社交媒體內容:XT文本、評論、作者、圖片等
  • 媒體內容:MP3/MP4、字幕、元數據、縮略圖等
  • 代碼託管服務(GitHub/GitLab):克隆代碼、REAUTE等。

多個訪問方法

  • 命令行工具(CLI):完全控制和自動化腳本集成
  • Web應用程式接口:直觀的操作和預覽
  • Python庫/ REST API/Webhook:方便二次開發和集成

數據存儲模式

  • 使用文件系統保存,無需專有格式
  • 歸檔內容存儲在本地文件夾中,以供長期使用或遷移

安裝和部署方法

ArchiveBox支持多種安裝方法,建議採用以下方法:

  1. Docker / Docker編寫(推薦)
    包含所有依賴項,便於部署和升級。
  2. 命令行安裝(適用於Linux / macOS / Debian等)pip安裝檔案箱檔案箱安裝或使用 捲曲|bash 一鍵腳本。
  3. 支持的平台:可以通過Docker或WSL 2使用Linux、macOS、BCD(原生)、Windows
  4. 需資源:最低500 MB RAM,建議至少2 GB;支持壓縮存儲的文件系統(例如收件箱、BTRFS)效率更高

工作原理和設計理念

  • ArchiveBox使用多種工具(例如wget、headless Chrome)來抓取內容。
  • 作者認為,核心優勢在於「去中心化」,避免所有網絡檔案都依賴單一服務(例如archive.org),由用戶自己保存並將來共享
  • 該項目使用Django框架構建後台,並使用SQLite作為本地資料庫;插件系統基於Pluggy; REST API使用django-ninja和Pydantic

快速入門示例

  1. 初始化項目目錄mkdis my_archive光碟my_archive archivebox init --設置
  2. 將URL添加到存檔檔案箱添加https://example.com
  3. 啟動本地Web服務預覽檔案箱伺服器
  4. 導入歷史記錄或書籤
    支持導入口袋、Pinboard、瀏覽器書籤、RSS提要等

社區反饋和使用場景

開發人員在Reddit討論中提到,ArchiveBox是一個複雜但功能豐富的Django項目,可以取代archive.org並支持更多抓取格式(屏幕截圖、PDF等)

其他用戶強調可以增強網絡內容保存的自主性和冗餘備份能力

摘要列表

特性描述
類型開源、自託管的網絡歸檔工具
支持輸入URL、書籤、歷史記錄、RSS、最喜歡的服務
保存格式HTML、PDF、PNG、WARC、音頻和視頻、文本、代碼等
使用CLI / Web界面/ API
推薦的安裝方法Docker或pip +安裝腳本
適用平台原生於Linux/macOS/BSD;Windows通過Docker或WSL 2
技術堆棧Python、Django、SQLite、Pluggy、Django-ninja
設計理念分布式、數據控制、自主長期歸檔

Github:https://github.com/ArchiveBox/archivebox

輸油管:

返回頂端