不需要 Docker、不需要命令列 — Win/Mac 一行安裝,打開就是完整圖形介面的 JAV 收藏管理工具。
封面牆瀏覽收藏 · 女優收藏與跨語言別名 · 8 大來源聯合刮削 · AI API 一句話操作片庫
English | 繁體中文
這不只是「把資料餵給 Jellyfin 的刮削器」。 OpenAver 負責找片、整理、逛收藏、探索相似——它的 Showcase 以封面 tag 為導航主軸,還有專屬的女優瀏覽模式(個人資料卡、罩杯/年齡/身高排序、跨語言別名自動收攏同一人的所有藝名與退休名),是為「一整櫃番號收藏」的實際逛法打造的瀏覽器。刮削完想丟客廳媒體中心看,再一鍵輸出 NFO/封面海報給 Jellyfin/Emby/Kodi——也可以不丟,Showcase 本身就是完整的瀏覽體驗。
核心由三個頁面組成:📋 掃描建庫 → 🎬 瀏覽收藏 → 🔍 逐一刮削(進階)。預設只「查資料」(搜尋/瀏覽都是純讀取);只有你按「整理」才會「動檔案」——依你設定的規則重新命名或搬移影片檔,其餘時候完全不碰你的檔案。
100% 本地運行 — 不蒐集資料、不上傳任何檔案資訊,網路請求僅用於刮削公開元數據。
⚡ Live Demo → openaver.slive.uk
裡面只有 mecha 反派與虛構電影海報,零 NSFW—老闆從你身後走過也沒事。
| 項目 | 內容 |
|---|---|
| 平台 | Windows 10/11 · macOS(Apple Silicon M1–M4) |
| 安裝 | 一行指令或 ZIP 安裝(免 Docker);裝好後全程圖形介面操作、免命令列 |
| 收藏瀏覽 | Showcase 封面牆 + Lightbox:影片模式(封面/tag 導航 + 相似探索)、女優模式(資料卡 + 罩杯/年齡/身高排序 + 跨語言別名) |
| 多裝置存取 | 一鍵切換伺服器模式,同 Wi-Fi 的手機 / 平板用瀏覽器即可瀏覽收藏(即時生效、免重啟、免設定;預設單機完全不對外) |
| 刮削來源 | 8 個內建(JavBus / Jav321 / JavDB / DMM / D2Pass / HEYZO / FC2 / AVSOX);進階可選配接 Metatube 聯邦再擴 30+ 來源 |
| 媒體庫輸出(選配) | 一鍵生成 NFO + 封面海報(poster / fanart),想掛客廳媒體庫時輸出給 Jellyfin / Emby / Kodi |
| 女優收藏 | 自動建檔 + 跨語言別名展開 + 多來源照片下載 |
| AI 操作 | 內建 REST API + capabilities manifest(Claude Code / Cursor / Perplexity 等 AI agent 直接操作) |
| AI 翻譯 | Ollama(本地免費)/ Gemini / OpenAI-compatible 任選 |
| 資料 | 100% 本地 SQLite,無雲端、無帳號、無遙測 |
| 授權 | MIT |
| 搜尋頁 | 女優收藏 |
|---|---|
![]() |
![]() |
macOS:
curl -fsSL https://raw.githubusercontent.com/slive777/OpenAver/main/install.sh | bashWindows (PowerShell):
irm https://raw.githubusercontent.com/slive777/OpenAver/main/install.ps1 | iex💡 不想開 PowerShell 的 Windows 用戶:也可以到 Releases 下載
OpenAver-Windows-Setup.bat,雙擊即可跑完同一套安裝。
安裝指令會自動:
- 偵測系統架構並下載最新版本
- 解除平台安全限制(macOS quarantine / Windows Mark of the Web)
- 建立桌面快捷方式(Windows)
- 保留設定與日誌檔案(升級時)
從 GitHub Releases 下載:
| 平台 | 檔案 |
|---|---|
| Windows x64 | OpenAver-vX.X.X-Windows-x64.zip |
| macOS arm64 | OpenAver-vX.X.X-macOS-arm64.zip |
⚠️ 手動 ZIP 安裝需額外步驟解除安全限制,見 ZIP 內附的疑難排解文件。 ℹ️ macOS 版本僅支援 Apple Silicon (M1/M2/M3/M4)。
首次開啟會自動進入新手導覽,帶你完成資料夾與基本設定,不需要先讀文件。
媒體伺服器的導航軸是片名和資料夾;OpenAver 的導航軸是封面、tag、女優——這才是這個 genre 的實際逛法。
- 封面牆 + Lightbox:以封面為主軸逛收藏,點封面進詳情燈箱看劇照、tag、女優資訊。
- 以 tag 篩選與排序:封面牆用 tag chip 當導航(中日英同義詞自動展開),可按日期 / 番號 / 女優 / 片商 / 檔案大小等多軸排序。
- 女優瀏覽模式:女優單獨成一個逛法——收藏女優封面牆 + 個人資料燈箱(身高、罩杯、三圍、年齡、別名歷史),按罩杯 / 年齡 / 身高 / 片數排序;跨語言別名把同一人的所有藝名與退休名收攏成一張卡。
- 相似探索:燈箱點魔杖 → 同風格的番號環繞主圖,點任一顆「鑽入」繼續探索。以 tag IDF 加權再混系列、片商、女優等共同點本地比對,找出同類片(規則式,非行為推薦演算法),離線即時、免 GPU、免下載模型。
- 整理完即時出現:在 Search 整理一片成功、且目標在掃描範圍內 → 立刻寫入 SQLite、封面飛進 Showcase,不必手動重掃。
- 手機 / 平板也能逛:設定裡一鍵切到「伺服器」,同 Wi-Fi 的手機、平板用瀏覽器打開網址,就能逛同一個收藏——即時生效、不用重啟、不用裝任何東西;用完切回「單機」立刻關閉對外。整個介面為觸控與直式螢幕重做,封面可左右滑換片。
- 8 來源聯合搜尋:同時搜尋 JavBus, Jav321, JavDB, DMM, D2Pass, HEYZO, FC2, AVSOX,一次查完;結果自動比對本地片庫並標示已收藏。
- 大圖詳情頁:封面、劇照、演員、標籤集中顯示,不用反覆切頁找資訊。
- 智慧搜尋:番號、女優名、系列、片商都能搜。
- 版本自動辨識:自動識別 UC / LEAK / 4K 等版本差異,整理檔名時不用手動補。
- 本地檔案批次搜尋:拖入影片檔案或資料夾,自動辨識番號並批次查詢資訊、封面與劇照。
- 進階重刮:番號刮不到、或想換來源時,改番號/挑指定來源重新抓取,先看預覽卡再決定要不要覆蓋。
- 掃描建庫:掃描本地影片資料夾,建立 SQLite 元數據庫,自動讀取既有 NFO 與封面。
- NFO / 封面補完:偵測缺失的 NFO 欄位或檔案,一鍵從網路刮削補齊——新增 NFO/封面檔在影片旁(原地寫入),不動到影片本身。(NFO = 放在影片旁的 XML 元數據檔,供 Jellyfin / Emby / Kodi 讀取標題、演員、標籤。)
- 女優 / Tag 別名管理:用 GUI 即時新增、編輯別名(不用手改設定檔或 XML),搜尋時中日英同義詞自動展開(如「女僕=Maid=メイド」、同一人的所有藝名與退休名)。
- 刮削來源管理:自由開關各來源、拖曳排出偏好順序(想要哪家的封面就排前面),即時生效;一鍵切換「無碼模式」只用無碼來源。
- 整理時保留字幕與 VR 標籤:搬移影片時自動偵測並帶走同目錄字幕檔;VR 影片保留原檔名的投影/立體標籤(如
_180_LR、mkx200),讓 Skybox / DeoVR / HereSphere 等頭顯播放器正確識別。
- 日文標題一鍵翻譯為你的 UI 語系(繁中 / 简中 / 英文),日文模式跳過翻譯。
- 支援 Ollama(本地 GPU,免費無限制)、Gemini Flash(有免費額度)和 OpenAI API Compatible(OpenRouter、任意相容端點)。
- 多語系 UI:繁中 / 简中 / 日文 / 英文,即時切換。
- 路徑與命名規則:靈活設定輸出路徑與檔名規則,支援
{suffix}格式變數。 - 我的最愛資料夾:設定常用的影片資料夾路徑(不是女優最愛),一鍵載入並自動搜尋。
- 外部媒體管理器模式(選配):選 Jellyfin / Emby / Kodi,刮削後自動生成對應命名的 poster + fanart 與相容 NFO,想掛客廳媒體庫時掛進去即正確顯示(poster 與 NFO 三者通用;
{stem}-fanart僅 Jellyfin/Kodi 讀取,Emby 不認此 fanart 命名)。 - 靜態 HTML 匯出:生成獨立 HTML 索引檔,不需部署伺服器也能離線瀏覽。
預設的 8 個內建來源開箱即用、免任何額外部署。如果你想要更多來源、或想替片庫多買一份保險:
- 再多 30+ 來源:在進階設定接上你自架的 Metatube server,刮削來源就能從 8 個內建擴充到 30+ 個社群維護的 provider,無碼與小眾片商覆蓋一次補強。
- 與本體解耦的避險層:Metatube 是持續活躍維護的開源刮削來源層;接上之後,即使某個內建來源暫時失效,你的補完管道仍可透過 Metatube 獨立運作、持續更新。
- 進階選配,不汙染主路徑:Metatube 需自行架設(Docker 或執行檔),屬進階玩家選配;不啟用完全不影響「免 Docker、開箱即用」的預設體驗。
內建 capabilities manifest,AI agent 讀一次就知道所有端點怎麼用——不只查資料,還能自己串多個步驟,完成那些人做起來瑣碎到放棄的事。
一句話,AI 自己跑完整流程:
- 「幫我把片子最多的 top 20 女優加入最愛,跳過已收藏的。」 SQL 統計 → 查重 → 批次收藏 → 下載照片
- 「橋本ありな 跟 新ありな 是同一人而且退休了,幫我加 tag。」 建立別名關聯 → 搜出兩個名字的所有片 → 批次加上「引退」標籤
- 「這篇文章提到的番號,做成有封面的 HTML 頁面。」 解析番號 → 批次搜尋 → 下載封面 → 生成 Gallery HTML
不需要 SDK,不需要讀文件,一行 curl 讓 AI 自學所有端點:
curl http://localhost:<port>/api/capabilitiesPort 和完整 URL 可在 Settings 頁面的「AI API」區塊查看。
支援的 AI 工具 · 進階用法 · 玩家彩蛋
支援任何 MCP / function-calling 相容的 AI 工具:
| 使用方式 | 工具 | 說明 |
|---|---|---|
| CLI | Claude Code, Codex CLI, Gemini CLI, Aider 等 | 終端機直接 curl,所有 CLI agent 皆支援 |
| IDE | Cursor, GitHub Copilot in VS Code, Windsurf, Trae 等 | Agent 模式 / MCP 呼叫本地 API |
| 桌面 App | Codex App, Google Antigravity 2.0, Claude Cowork, OpenClaw | 不需開發環境,開箱即用 |
💡 對話內想看到封面:Codex App(對話內嵌) 或 Google Antigravity 2.0(artifact 面板) 兩款桌面 app 都能在對話中向你展示封面,安裝簡單、開箱即用。
⚡ 小模型友善:capabilities manifest 已針對輕量模型優化,Gemini Flash / GPT mini / Claude Haiku 皆可正確操作所有端點。
💻 想讓 AI 預讀 repo、或自己擴充端點? 所有端點定義在
web/routers/capabilities.py— AI agent clone repo 時會優先讀這個檔,不需要啟動服務就能學會所有工具。
🪄 進階玩家彩蛋:FC2 自動找女優。 FC2 影片幾乎都沒女優標記,但其中不少是後來轉有碼出道的熟面孔(白上咲花就是經典案例)。SQL 撈 actress 為空的片 → DeepFace(RetinaFace + ArcFace)對 Gfriends 庫比對 →
POST /api/user-tags寫回標記。50 行 Python 一個週末跑完全庫,發現喜歡的手動加最愛;未識別素人 DBSCAN 自建群組下次直接配對。
OpenAver 和 Jellyfin / Emby / Kodi 有什麼不同? 分工不同。Jellyfin / Emby / Kodi 是把影片擺上客廳大螢幕播放的媒體伺服器,以「一部電影」為單位、用片名和資料夾組織。OpenAver 是你自己的番號收藏室——用封面牆逛、用 tag 橫向延伸、用女優縱向深挖,找片、整理、探索相似都在這裡完成。兩者各就其位:刮削完想丟客廳媒體中心看時,一鍵輸出 NFO + 封面就能掛進 Jellyfin / Emby / Kodi。
OpenAver 需要 Docker 嗎? 不需要。OpenAver 是桌面 App,Windows / macOS 一行指令安裝,免 Docker;裝好後全程圖形介面操作,免命令列。
OpenAver 支援 Mac 嗎? 支援。Windows 10/11 與 macOS(Apple Silicon M1–M4)皆可。
OpenAver 會搬移、改名或刪除我的檔案嗎? 預設只「查資料」(搜尋、瀏覽都是純讀取),掃描建庫也只讀不動。只有你主動按「整理」時才會動檔案:依你設定的規則搬移或重新命名影片檔,但絕不刪除;遇到目標位置已有同名檔會先提醒你,再由你決定是否覆蓋。NFO 與封面則是新增在影片旁的檔案(原地寫入),不會動到影片本身。
Windows 關閉視窗後可以在背景運行嗎? 可以。點擊右上角 X 時可選擇退出或最小化到系統匣,並可勾「不再顯示」記住選擇;單擊或雙擊右下角 OpenAver 圖示可重新開啟。也可到「設定 → 系統設定 → 關閉視窗時」事後調整。
如果內建的刮削來源(Scraper)失效了怎麼辦? 內建 8 個來源彼此 fallback,單一來源暫時失效仍可從其他來源補;進階玩家還可選配接上自架的 Metatube 聯邦再擴 30+ 來源,等於替片庫多買一份保險。
為什麼 JavLibrary 來源不能用 AI 或批次自動抓取? 因為 OpenAver 選擇尊重 JavLibrary 全站的 Cloudflare 人機驗證。桌面版用戶本來就是真人——首次或驗證過期時會彈出一個真的 JavLibrary 瀏覽器視窗,你手動點一次驗證,系統再自動重試並回填結果。所以 JavLibrary(BETA)只支援桌面版的手動精確番號查詢,不參與批量/自動搜尋、也不開放給 AI agent。換來的好處是:那些連 Metatube 30+ 來源都沒收錄的冷門長尾番號與社群標籤,OpenAver 也能在合規前提下抓到。
可以讓 AI 工具操作 OpenAver 嗎?
可以。內建 REST API + capabilities manifest,curl 一次 AI 就學會所有端點,能用一句話跑完多步流程(詳見上方 AI-Ready API 段)。
OpenAver 會收集隱私或上傳我的本地檔案嗎? 不會。100% 本地運行,不蒐集、不上傳任何檔案資訊;網路請求僅用於刮削公開元數據。
技術架構 · 從原始碼執行 · 目錄結構 · 打包
| 層級 | 技術 |
|---|---|
| Backend | FastAPI (Python 3.12) |
| Frontend | Jinja2 + DaisyUI + Tailwind CSS + Alpine.js 3.x + Fluent Design 2 |
| Animation | GSAP 3.14+ + Motion Adapter (reduced-motion support) |
| Desktop | PyWebView (Windows/macOS) |
| Database | SQLite (WAL mode) |
| Testing | Pytest (4,000+ tests) |
前置需求: Python 3.12(與打包版本一致)、Chrome/Edge、WebView2 Runtime (Windows 10/VM)
git clone https://github.com/slive777/OpenAver.git
cd OpenAver
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
# 開發模式 (Hot Reload)
uvicorn web.app:app --reload --host 0.0.0.0 --port 8000
# 桌面模式 (Windows)
python windows/launcher.pysource venv/bin/activate
pytestOpenAver/
├── web/ # Web GUI (FastAPI)
│ ├── routers/
│ │ ├── capabilities.py # 🌟 AI Manifest — 所有端點的自描述定義(單檔全貌)
│ │ └── ... # 其餘業務端點(search / scanner / scraper / actress / ...)
│ ├── templates/ # HTML Templates (DaisyUI + Fluent Design 2)
│ └── static/ # CSS/JS Assets (Modular JS, Theme CSS)
├── core/ # 核心邏輯
│ ├── scrapers/ # 模組化爬蟲 (JavBus/JavDB/Jav321/FC2/AVSOX/DMM/D2Pass/HEYZO)
│ ├── database.py # SQLite 資料層 (WAL mode)
│ ├── organizer.py # 檔案整理 + fallback 空值防護
│ ├── path_utils.py # 跨平台路徑處理 (file:// URI)
│ ├── i18n.py # 多語系翻譯核心 (t() / fallback chain)
│ └── translate_service.py # AI 翻譯 (Ollama/Gemini/OpenAI Compatible)
├── locales/ # 四語系 JSON (zh_TW/zh_CN/ja/en)
├── tests/ # 測試代碼 (Pytest)
└── windows/ # Windows 啟動器 (PyWebView)
source venv/bin/activate
python build.py # Windows
python build_macos.py # macOS💡 疑難排解請參閱打包版 ZIP 內附的「疑難排解」文件,或查看 GitHub Wiki。
加入 Telegram 群組 與其他使用者交流討論!
| 管道 | 適用情境 |
|---|---|
| GitHub Issues | Bug 回報、功能建議、開發討論 |
| Telegram 群組 | 隱私敏感問題、截圖/影片直傳 |
回報時請附上: 問題描述、重現步驟、OS 版本、日誌檔案(執行 Debug 版啟動腳本取得)。
OpenAver 使用並感謝以下開源專案:
- FastAPI - 現代化的 Python Web 框架
- PyWebView - 輕量級的跨平台桌面應用框架
- GSAP - 高效能 JavaScript 動畫引擎
- DaisyUI - Tailwind CSS 元件庫
- Tailwind CSS - Utility-first CSS 框架
- Alpine.js - 輕量級 JavaScript 框架
MIT License
⚠️ 免責聲明
本專案僅供個人學習研究使用,請使用者遵守:
- 尊重網站服務條款
- 合理控制請求頻率
- 不用於商業目的
使用本專案造成的任何後果由使用者自行承擔。





