はじめに
デジタルヒューマニティーズにおいて、Webコンテンツの保存と再現は重要な課題です。Webサイトは日々更新・消滅しており、研究対象としてのWebページを長期的に保存する仕組みが必要です。
ReplayWeb.page は、Webrecorderプロジェクトが開発したブラウザベースのWebアーカイブ再生ツールです。WARC(Web ARChive)やWACZ(Web Archive Collection Zipped)形式のアーカイブファイルを、ブラウザ上でそのまま閲覧できます。
ReplayWeb.pageの主な特徴
クライアントサイド処理
最大の特徴は、Service Workerを活用したクライアントサイド処理です。従来のWebアーカイブ再生ツール(Wayback Machineなど)はサーバーサイドでの処理が必要でしたが、ReplayWeb.pageではブラウザ内ですべての処理が完結します。これにより、サーバーの構築・運用が不要になります。
WARC/WACZ形式のサポート
国際標準であるWARC形式と、Webrecorderが提案するWACZ形式の両方に対応しています。WACZ形式はWARCファイルをZIP圧縮し、インデックスやメタデータを含めたパッケージ形式で、効率的なランダムアクセスが可能です。
多様なデータソースからの読み込み
ローカルファイル、URL、Google Drive、Dropbox、S3など、さまざまなソースからアーカイブファイルを読み込めます。HTTPレンジリクエストに対応しているため、大きなアーカイブファイルでも全体をダウンロードせずに部分的にアクセスできます。
埋め込み対応
<replay-web-page> カスタムエレメントを使って、任意のWebページにアーカイブの再生ウィジェットを埋め込めます。研究成果の公開やデジタル展示に活用できます。
DH研究での活用例
Webサイトの長期保存
研究対象のWebサイトをWARC/WACZ形式で保存し、将来にわたって参照可能な状態を維持できます。リンク切れや改変を心配することなく、特定時点のWebコンテンツを正確に再現できます。
デジタル展示の構築
博物館や図書館のデジタル展示において、過去のWebサイトをそのまま再現する展示を構築できます。ReplayWeb.pageの埋め込み機能を使えば、展示用Webサイト内にアーカイブされたコンテンツをシームレスに組み込めます。
ソーシャルメディアの保存
ソーシャルメディア上の投稿やスレッドなど、消滅しやすいコンテンツを保存・再現するのに適しています。Webrecorderのキャプチャツール(ArchiveWeb.page)と組み合わせることで、キャプチャから再生までの一連のワークフローを構築できます。
基本的な使い方
- アーカイブの準備: ArchiveWeb.pageやwget、Browsertrixなどでページをキャプチャし、WARC/WACZファイルを作成します
- ReplayWeb.pageにアクセス: replayweb.page をブラウザで開きます
- ファイルの読み込み: ローカルファイルを選択するか、URLを指定してアーカイブを読み込みます
- ブラウジング: 保存されたWebページをオリジナルと同様にブラウジングできます
関連ツール
Webrecorderプロジェクトは、ReplayWeb.page以外にも以下のツールを提供しています。
- ArchiveWeb.page: ブラウザ拡張機能でWebページをキャプチャ
- Browsertrix: 大規模なWebクローリングとアーカイブの自動化
- py-wacz: PythonでWACZファイルを操作するライブラリ
技術的な仕組み
ReplayWeb.pageはService Workerを使って、アーカイブされたHTTPレスポンスをインターセプトし、ブラウザに提供します。ユーザーがアーカイブ内のURLにアクセスすると、Service WorkerがWARC/WACZファイルから該当するレスポンスを取得し、元のサーバーにリクエストを送ることなく、保存されたコンテンツを返します。
この仕組みにより、JavaScriptやCSSを含む動的なWebページも、保存時の状態のまま正確に再現できます。
まとめ
ReplayWeb.pageは、Webアーカイブの再生をブラウザだけで完結させる革新的なツールです。サーバー不要で動作する手軽さと、標準的なWARC/WACZ形式への対応により、DH研究におけるWebコンテンツの保存・再現・共有の課題を解決します。デジタル保存に関心のある研究者にとって、必須のツールといえるでしょう。