
指定されたURLのWayback Machineアーカイブ全体をダウンロードします。
Waybackpackは、指定されたURLに対するWayback Machineのアーカイブ全体をダウンロードできるコマンドラインツールです。
例えば、労働省のホームページの1996年までの全コピーをダウンロードするには(ちょうどそのサイトが最初にアーカイブされた年です)、次のように実行します:
waybackpack http://www.dol.gov/ -d ~/Downloads/dol-wayback --to-date 1996
結果:
~/Downloads/dol-wayback/
├── 19961102145216
│ └── www.dol.gov
│ └── index.html
├── 19961103063843
│ └── www.dol.gov
│ └── index.html
├── 19961222171647
│ └── www.dol.gov
│ └── index.html
└── 19961223193614
└── www.dol.gov
└── index.html
または、アーカイブされたすべてのスナップショットのURLを表示するだけなら:
waybackpack http://www.dol.gov/ --list
pip install waybackpack
usage: waybackpack [-h] [--version] (-d DIR | --list) [--raw] [--root ROOT]
[--from-date FROM_DATE] [--to-date TO_DATE]
[--user-agent USER_AGENT] [--follow-redirects]
[--uniques-only] [--collapse COLLAPSE] [--ignore-errors]
[--max-retries MAX_RETRIES] [--no-clobber] [--quiet]
[--progress] [--delay DELAY] [--delay-retry DELAY_RETRY]
url
positional arguments:
url ダウンロードしたいリソースのURL。
options:
-h, --help このヘルプメッセージを表示して終了。
--version プログラムのバージョン番号を表示して終了。
-d DIR, --dir DIR ファイルを保存するディレクトリ。存在しない場合は作成される。
--list ファイルをダウンロードせず、スナップショットのリストのみを表示。
--raw ファイルをWayback Machineやwaybackpackによる加工なしの元の状態で取得。
--root ROOT スナップショット化されたリソースを提供するルートURL。デフォルト: 'https://web.archive.org'
--from-date FROM_DATE ダウンロードする最も古いスナップショットを示すタイムスタンプ文字列。形式はYYYYMMDDhhssだが、末尾の桁は適宜省略可能。例: '201501' も有効。
--to-date TO_DATE ダウンロードする最新のスナップショットを示すタイムスタンプ文字列。形式はYYYYMMDDhhssだが、末尾の桁は適宜省略可能。例: '201604' も有効。
--user-agent USER_AGENT
Wayback Machineへのリクエストに含めるUser-Agentヘッダ。可能であれば、'waybackpack'という文字列とあなたのメールアドレスを含めてください。そうすることで、もしサーバーに負荷をかけすぎた場合、連絡先がわかります。デフォルト: 'waybackpack'。
--follow-redirects リダイレクトに従う。
--uniques-only 重複ファイルの最初のバージョンのみダウンロード。
--collapse COLLAPSE archive.orgの`collapse`パラメータ。例: --collapse timestamp:6 とすると、結果が月に最大1件に丸められます。詳細: https://github.com/internetarchive/wayback/blob/master/wayback-cdx-server/README.md#collapsing
--ignore-errors HTTP以外のエラー(例: requestsライブラリのChunkedEncodingError)でクラッシュしない。代わりにエラーをログに記録して続行。詳細: https://github.com/jsvine/waybackpack/issues/19
--max-retries MAX_RETRIES
4XXまたは5XXステータスコードのコンテンツへのアクセスを何回試行してからスキップするか。
--no-clobber ファイルが既に存在し(かつサイズが0より大きい場合)、再度ダウンロードしない。
--quiet stderrへの進捗ログを出力しない。
--progress プログレスバーを表示。デフォルトのログ出力を抑制。`tqdm`のインストールが必要。
--delay DELAY 各フェッチの間にX秒スリープ。
--delay-retry DELAY_RETRY
エラー後のリトライの間にX秒スリープ。
WaybackpackはピュアPythonで書かれており、依存関係はrequestsのみです。Pythonが動作する環境であればどこでも動作するはずです。Python 3.3以上が必要です。
バグの発見、タイポの修正、便利な機能の提案をしてくださった以下のユーザーの皆様に感謝します: