繰り返し実行を予測しやすくする

gallery-dl のダウンロードアーカイブ:再ダウンロードを防ぐ

gallery-dl のダウンロードアーカイブは、定期的な処理から参照できる記録ファイルです。次回以降も同じパスを指定すると、記録済みの項目をスキップし、新しく対象になる項目を処理できます。このガイドでは、安全なコマンド、アーカイブの共有範囲、保守方法、問題の切り分け方を説明します。

繰り返し実行の流れ安定したローカルファイルアーカイブの限界
画像項目が永続的な記録を経由してダウンロードフォルダーへ進む様子を示す編集用イラスト
アーカイブは次回以降の実行が参照する記録であり、ダウンロードしたメディアそのものではありません。
要点:同じアーカイブファイルを使い続ける

保持できるパスを --download-archive FILE に指定し、今後の実行でも同じパスを使います。まず対応している URL と小さな範囲で試し、ファイルが読み取られ更新されることを確認してください。バックアップは別に保管します。アーカイブが記録するのはダウンロード処理の履歴であり、メディアのコピーやファイルの整合性チェックではありません。

記録の役割を知る

gallery-dl のダウンロードアーカイブでできること

--download-archive オプションを使うと、gallery-dl はローカルファイルを参照します。コマンドラインのリファレンスでは、処理した項目を記録し、すでにアーカイブにある項目をスキップすると説明されています。同じファイルを再利用すれば、次回のプロフィール、ギャラリー、定期ジョブの実行時に、すべてを新規項目として扱わず過去の記録を確認できます。

アーカイブはダウンローダーの処理履歴であり、メディア、保存先一覧、チェックサムではありません。削除したファイルを復元したり、ファイルが今も開けることを確認したりはできません。ファイル名テンプレートは新しいファイルの名前を決めるだけで、アーカイブの代わりにはならず、異なる URL の画像データを比較する機能もありません。

保存先を一度決める

アーカイブファイルのパスを固定する

gallery-dl を実行するアカウントとマシンから利用できる場所を選びます。スケジューラーでは、相対パスは作業ディレクトリに左右されるため、絶対パスのほうが確認しやすくなります。普段から名前を変更したり、整理したり、置き換えたりするフォルダーは避けてください。

用途が分かる名前を付け、コマンドと一緒にパスを記録します。内部形式を推測してファイル名を変えたり編集したりしないでください。ジョブを移行する場合は、アーカイブを意図してコピーし、新しいコマンドがそのコピーを参照するようにします。

macOS または Linux の例
gallery-dl --download-archive "$HOME/.local/share/gallery-dl/archives/creator-a.archive" "URL"
Windows の例
gallery-dl --download-archive "C:\Users\you\AppData\Local\gallery-dl\archives\creator-a.archive" "URL"
パスもジョブの一部

定期ジョブのマシン、シェル、スケジュール設定を変更したら、履歴も一緒に移ったと思い込まず、実際のアーカイブパスを確認してください。

同じ流れを試す

初回と次回の実行をテストする

アクセスする権限のある対応 URL を使います。初めて扱う URL なら、まずアーカイブを指定せずにシミュレーションしてください。その後、専用のアーカイブパスと小さな範囲を使って実際に少量を処理し、保存先と再実行時の動作を確認します。

URL、範囲、アーカイブパスを変えずにもう一度実行します。記録済みの項目はスキップされるはずです。テスト結果を理解できてから、より多く処理したい場合にだけ範囲の制限を外します。定期ジョブでは、確認済みのオプションとパスをコマンドと一緒に保存し、実行した環境も記録しておきます。

初回実行、アーカイブへの記録、既知の項目をスキップする次回実行を示す編集用フロー図
URL、範囲、アーカイブパスを同じにして初めて、再実行のテストになります。
小さな範囲から始める
gallery-dl --range "1-5" --download-archive "$HOME/.local/share/gallery-dl/archives/creator-a.archive" "URL"
同じテストを再実行する
gallery-dl --range "1-5" --download-archive "$HOME/.local/share/gallery-dl/archives/creator-a.archive" "URL"
共有する範囲を決める

どのジョブでアーカイブを共有するか

定期的に確認するプロフィールやコレクションは、1 つの安定したアーカイブパスで管理すると分かりやすくなります。担当者、保存先、実行時刻が異なるジョブでは、ファイルを分けると切り分けやすくなります。URL の種類を同じ処理として扱う意図があり、一緒にテストした場合にだけ共有してください。

アーカイブは実行対象を選びません。範囲、日付フィルター、抽出設定が対象を決め、アーカイブはその処理に履歴を渡します。ジョブが途中で終わったり並び順が変わったりした場合は、スキップしきい値を加える前に、対象選択とアーカイブの両方を確認します。

ジョブの例実用的なアーカイブの選び方確認すること
同じプロフィールを定期確認そのジョブ専用の安定したパスを使うスケジュール実行でも同じパスが解決される
別の投稿者や保存先を使う用途が分かる別々のファイルを使う各コマンドが意図したファイルを参照する
意図的にまとめたコレクション小さなテスト後にのみ共有するURL の種類と履歴が想定どおり動く
できることを見極める

アーカイブで検出できないこと

ダウンロードアーカイブは、ファイルのバイト列を比較する重複検出器ではありません。異なる URL にある同一メディアをまとめたり、ファイル内容の変更を検出したりすると考えないでください。内容比較が必要なら、別のローカルファイル管理手段を使います。

メディアを移動または削除しても記録が残ることがあるため、アーカイブからそのファイルを復元することはできません。履歴をリセットする前にコピーを保管してください。変化するコレクションでは、範囲や日付フィルターが今も必要な項目を選んでいるかも確認します。

フィルター変更前に対応 URL を確認する
gallery-dl --config-ignore --simulate "URL"
コマンドオプションを確認する
gallery-dl --help
履歴を保つ

アーカイブをバックアップして慎重に移行する

どのジョブが使うか分かるメモを添えて、メディアの保存先とは別にアーカイブをバックアップします。ジョブを移行する前にファイルをコピーし、新しいコマンドがそのコピーを使うようにしてください。全件処理を予定する前に、権限のある小さなテストで新しいパスを確認できます。

ジョブを作り直す場合、置き換え後の設定が小さなテストを通過するまでは古い履歴を残します。別々のマシンにあるアーカイブが自動同期されるとは限りません。また、形式を確認していないファイルを編集しないでください。

定期ジョブが安定したアーカイブを使い、その別コピーを保管する様子を示す編集用イラスト
使用中のパスを固定し、移行やリセットの前に別コピーを保管してください。
入力と設定を確認する

同じ項目が再びダウンロードされるとき

項目が再ダウンロードされる場合は、実際に実行されたコマンドを調べます。--download-archive が含まれているか、パスが一致するか、プロセスがファイルにアクセスできるかを確認してください。スケジューラーは別のアカウントや作業ディレクトリを使うことがあるため、テスト時と環境を比べます。

次に URL、範囲、フィルター、設定を比較します。権限のある URL を 1 つずつ試し、パスが分からないまま大規模な実行をしないでください。想定した項目がスキップされる場合は、まず対象選択の設定を確認し、リセット前にコピーを保管します。

毎回すべてダウンロードされる

オプション、絶対パス、OS アカウント、スケジューラーの作業ディレクトリを確認します。2 回目の実行が初回と同じファイルを使っているか確かめてください。

  • コマンド全体を比較する
  • 読み書き権限を確認する
  • 一時ファイルがアーカイブを置き換えていないか確認する

期待した項目が引き続きスキップされる

アーカイブを変更する前に、選択した URL、範囲、フィルターを確認します。新規状態を調べる必要がある場合はコピーを残し、別のテスト用アーカイブを使ってください。

  • 現在のコマンドオプションを確認する
  • 権限のある URL を 1 つ試す
  • 形式が分からないファイルを編集しない
繰り返せる手順

gallery-dl アーカイブを使う安定した手順

対応 URL、確認済みのコマンド、分かりやすい保存先、ジョブと一緒に使い続けるアーカイブパスを用意します。小さな範囲で試し、同じコマンドを再実行し、動作が分かってから実行範囲を広げます。履歴はメディアとは別にバックアップしてください。結果が変わったら、何かをリセットする前にパス、URL、範囲、フィルター、設定を比べます。

よくある質問

gallery-dl ダウンロードアーカイブのよくある質問

gallery-dl が同じ項目を再ダウンロードしないようにするには?

--download-archive に安定したローカルパスを指定し、今後の実行でも同じパスを渡します。小さく試し、次回の実行がそのファイルを参照することを確認してください。

アーカイブファイルにはどのパスを使えばよいですか?

gallery-dl のアカウントとジョブから利用できる場所を選びます。スケジューラーでは作業ディレクトリに左右される相対パスより、絶対パスのほうが確認しやすくなります。

ダウンロードアーカイブには画像も入っていますか?

いいえ。次回以降の実行が使う記録であり、メディアの保存先とは別です。バックアップでも整合性チェックでもありません。

複数の URL に同じアーカイブを使えますか?

ジョブの履歴を共有する意図があり、具体的な URL の種類を一緒にテストした場合に限ります。担当者、保存先、実行時刻が異なるなら、別ファイルのほうが診断しやすくなります。

アーカイブを使っているのに、なぜ再ダウンロードされますか?

オプションがあり、同じアクセス可能なファイルを実行が使っているか確認します。URL、範囲、フィルター、アカウント、スケジューラーの作業ディレクトリを比較してください。

記録済みの項目を意図的にもう一度ダウンロードするには?

現在のアーカイブを保管し、別のテスト用アーカイブか、最新の公式ドキュメントで確認できる方法を使います。形式を確認していないファイルを編集しないでください。

公式資料

gallery-dl 公式コマンドラインオプション
次のステップ

関連リソース