スクレイパー
MediaTree はプラグイン形式のスクレイパーで、タイトル、ポスター、出演者、概要、シーズン、エピソード、画像を取得します。ライブラリごとに異なるスクレイパーを選べます。
組み込みスクレイパー
TMDB
tmdb_movie と tmdb_tv は映画と TV 番組向けです。タイトル、概要、ジャンル、出演者、人物、ポスター、背景画像、シーズンポスター、エピソード画像、予告編、レビュー、リリース情報に対応します。
TMDB には TMDB_ACCESS_TOKEN が必要です。Settings には TMDB Read Access Token の入力欄だけを表示します。
Bangumi
bangumi はアニメや東アジア系メディアに向いています。多言語タイトル、人物、カバー、作品タイプを取得できます。公開 API を使うため API key は不要です。
Javdatabase
javdatabase はコードベースで JAV メタデータを照合します。タイトル、出演者、監督、メーカー、レーベル、ジャンル、評価、サムネイル、リリース情報に対応します。auto チェーンには含まれないため、対象ライブラリで明示的に選択します。
Auto
auto は既定のフォールバックチェーンです。
- ファイル名に TMDB ID があれば抽出します。
- ID が見つかった場合は TMDB で完全一致します。
- ID がない場合は TMDB の映画と TV を検索します。
- TMDB が失敗した場合は Bangumi を試します。
- すべて失敗した場合はローカルファイル名を維持します。
None
none はネットワークスクレイピングを無効にします。ファイル名やローカル情報だけを使いたいライブラリ向けです。
キャッシュと更新ポリシー
- 検索結果と詳細レスポンスは SQLite にキャッシュし、重複したバックグラウンドリクエストを減らします。
- TMDB/Bangumi は 168 時間、Javdatabase は 24 時間キャッシュします。
- 空結果はキャッシュに書き込まず、古い空キャッシュは読み込み時に削除します。
- 起動時スキャンとファイル監視スキャンはキャッシュを使います。
- 手動フルスキャン、再スクレイプ、手動スクレイプ、手動適用はキャッシュをバイパスします。
手動スクレイピング
- フォルダまたは作品のアクションメニューを開きます。
- 手動スクレイピングまたは再スクレイプを選びます。
- タイトル、コード、TMDB ID で検索します。
- 正しい候補を選びます。
- 適用するとローカルデータベースとカバーキャッシュが更新されます。
カスタムスクレイパー
開発者は backend/app/scrapers/ にスクレイパーを追加し、BaseScraper を継承して search() と get_detail() を実装し、registry.py に登録できます。実装の詳細は開発ガイドを参照してください。
