私たちはCC-MAIN-2026-30のCommon CrawlインデックスをTheguardian.comで照会し、185件のレコードを取得しました。コンテンツ記事は1件もありません。すべてのレコードはサイト自身のrobots.txtまたはそのリダイレクトであり、そのファイルはCCBotを拒否しています。クロールが保持したのはパーミッションチェックのみです。
Internet ArchiveのWayback MachineとCommon Crawlは、どちらも存在しなくなったページのコピーを保持していますが、答える問いが異なります。Wayback Machineは、指定した日付における単一URLを再生します。Common Crawlは数十億ページをバルクテキストとして提供しますが、再生機能はありません。ウェブアーカイブとは、両者が属するカテゴリーであり、第三のサービスではありません。同カテゴリーには、国立ウェブアーカイブ、Archive-Itのような有料サービス、archive.todayのようなオンデマンドキャプチャサイト、自作のWARCファイルも含まれます。両サービスは過去の問いに答えるものであり、どちらも特定のサイトを継続的に収集しているわけではありません。
TL;DR
- CCBotはJavaScriptを実行しません。クライアントレンダリングされたページはシェルとして届きます。
- バルク作業にはまずCommon Crawlを照会し、ミスにはWaybackを使用します。既知のURLリストがある場合は逆順にします。
- CDXの
digestはペイロードSHA-1なので、フェッチ前にインデックスでcollapse=digestとcollapse=timestampの差分を確認します。Common Crawlはcollapseを無視します。 - Wayback CDXクライアントは毎分24リクエストで設計してください。共有プールの上限30/分の80%です。
- どちらもカバレッジ保証やSLAを公表しておらず、特定のサイトを継続的に収集しているわけでもありません。まず自分のドメインを計測してください。
What the Internet Archive and Common Crawl each store
Waybackのキャプチャはweb.archive.org/web/<timestamp>/<url>としてアドレス指定でき、同じURLが30年にわたって数千件のキャプチャを持つこともあります。デフォルトの再生はリンクを書き換えてツールバーを挿入するため、ブラウザでページがレンダリングされます。
Common Crawlの月次クロールはWARCファイルと派生テキスト・メタデータファイルのセットで構成され、公開バケットに公開されます。インデックスは特定のURLがどのファイルのどのバイト範囲にあるかを示します。
| Wayback Machine | Common Crawl | |
|---|---|---|
| 保存内容 | 個別URLの時系列キャプチャ | 月次クロール全体、WARCと派生テキスト |
| 回答できる問い | 一つのURLの多数の日付 | 一つのクロール日付の多数のURL |
| 再生 | あり、リンク書き換えとツールバー挿入あり | なし |
| 全文検索 | なし | なし、ただしWETファイルでインデックス用テキストを取得可能 |
| バルクエクスポート | なし、APIアクセスのみ | クロール全体を公開バケットで無料提供 |
| レート制限 | 毎分30リクエスト、CDXとtimemapで共有、Internet Archiveは非公表 | 非公表、「大幅なレート制限あり」 |
| カバレッジ保証 | なし | なし、ドメインランクによるサンプリング |
CC-MAIN-2026-30は21億4,000万ページ、18日間で4,050万ホストにわたる364TiBの非圧縮コンテンツとして公表されています。Common Crawlはコーパス全体を3,000億ページ超とし、月間30〜50億ページの新規追加と説明していますが、直近18件の公表クロールはすべて30億を下回っています。ジョブのサイズは単一クロールから見積もりましょう。
Common CrawlのFAQには「現在、JavaScriptは実行されず、Cookieも使用されていない」と記載されています。CCBotは生のHTTPレスポンスを保存するため、クライアントレンダリングされたページはシェルとして届きます。対象ページがブラウザ上でコンテンツを構築する場合は、Common Crawlを前提とした計画を立てる前に一つのキャプチャを確認してください。
各クロールは10万ファイルずつ5つの並列ファイルセットで構成されます。WARCはレスポンス全体、WATは抽出されたメタデータとリンク、WETはプレーンテキストのみを格納し、残り2つはrobots.txtのキャプチャと非200レスポンスを格納します。WARCを読むリンクグラフジョブは必要以上のバイトを転送します。
Common Crawlはどのページも再訪することを保証していないため、多数のURLを多数の日付にわたって取得するという問いはどちらのサービスも答えられません。

Common CrawlのFAQにはサンプリングポリシーが記載されています。データセットは「ウェブのサンプルであり、ウェブサイト全体をアーカイブするのではなく、ランダムに選択したサブセットをアーカイブする」とのことです。仕組みはFAQではなくCommon Crawlのエンジニアリングトークに記載されています。ドメインレベルの調和中心性ランクが各ドメインのURL数の予算を定義するため、リンクが多いドメインは予算が大きく、低ランクのドメインは予算がゼロになる場合もあります。
Wayback Machineにはアーカイブされたページコンテンツの全文検索機能がありません。Internet Archiveのヘルプページには「将来的に全文検索エンジンを実装したいと考えている」と記載されています。サイト検索はサイトのメタデータを照合するものであり、アーカイブされたページ内のテキストは対象外です。Common CrawlはテキストをWETファイルで提供しますが再生機能はないため、WETファイルから再構築されたページは元のページと同じ見た目にはなりません。
What a domain lookup returns
プレフィックスマッチングを使用して5つのドメインに対して同じクエリを実行しました。
| 照会ドメイン | インデックスレコード数 | robots.txtレコード数 |
コンテンツページ数 |
|---|---|---|---|
nytimes.com/* |
1 | 1 | 0 |
cnn.com/* |
1 | 1 | 0 |
bbc.com/* |
2 | 2 | 0 |
theguardian.com/* |
185 | 185 | 0 |
github.blog/* |
4,700 | 49 | 4,651 |
The Guardianの185件のレコードはrobots.txtとそのhttpリダイレクトの2つのURLにのみ解決され、クロールを通じて再取得されています。インデックスレコードを数えるスクリプトは5つすべてをカバー済みと判断しますが、4つについては誤りです。github.blogの4,651件のコンテンツレコードのうち、3,647件が200を返しました。
マッチタイプによって結果が変わります。SURTの正規化はwww.をベアホストに折り畳みますが、domain/プレフィックスマッチは他のサブドメインには届きません。cnn.com/は1件を返しましたが.cnn.comは11件を返し、nytimes.com/は1件に対して*.nytimes.comは2件を返しました。どちらの形式でもすべてのレコードはrobots.txtのフェッチでしたが、件数はクロールの特性と同じくらいクエリの特性でもあります。このような数値を報告する際は必ずマッチタイプを明記してください。
同じクエリを古いクロールIDに対して実行すると、ブロックのおおよその時期がわかります。このクエリには盲点があります。パブリッシャーがrobots.txtに記述した内容は見えますが、ネットワークエッジで適用されたブロックや後からのオプトアウトは見えないため、カウントではなく下限値として読む必要があります。スクレイピング向けrobots.txtガイドでは、エージェントグループの解決方法を説明しています。
クロールあたりのサイズも減少しています。Common Crawlの公表クロールサイズ統計によると、月次ページ数はCC-MAIN-2025-05の30億3,100万からCC-MAIN-2026-30の21億4,900万へと29.1%減少しています。CC-MAIN-2024-10からCC-MAIN-2026-30までの29クロールでは、2024年の10クロールが平均26億9,000万ページ、2025年の12クロールが平均25億3,000万ページ、2026年7月までの7クロールが平均21億5,000万ページとなっています。

ここで原因は特定できません。クロールサイズはパブリッシャーの行動と同様に、Common Crawl内部のインフラ、予算、スケジューリングによっても変動します。この減少は、2024年のクロールからサイズを見積もると2026年のものを約4分の1過大評価することを意味し、クロールあたりの件数は加算できません。連続するクロールは同じフロンティアの多くを再取得するため、urlkeyとdigestで重複排除せずに合計すると推定値がさらに膨らみます。
Check your own domains
このスクリプトは、テーブルと同じdomain/*プレフィックスマッチを使用して、最新の公表クロールのコンテンツレコードをrobots.txtフェッチと比較します。インデックスを1ページずつ走査し、切り捨てによってレコードが分割されたページを部分カウントせずに除外し、ドメインが正常に応答しない場合も処理を継続します。以下の2ドメインは約70秒かかりますが、そのほぼすべてが意図的なスリープです。
import http.client, json, time, urllib.error, urllib.parse, urllib.request
DOMAINS = ["theguardian.com", "github.blog"]
# Use your own contact address. One shared UA string arriving from many callers
# is the string an operator blocks.
UA = {"User-Agent": "coverage-check/1.0 ([email protected])"}
def latest_crawl():
"""Common Crawl ships roughly monthly. Hardcoding an ID measures a stale crawl
and returns a number that looks current."""
url = "https://index.commoncrawl.org/collinfo.json"
info = urllib.request.urlopen(urllib.request.Request(url, headers=UA), timeout=60).read()
return json.loads(info)[0]["id"] # newest first
CRAWL = latest_crawl()
INDEX = f"https://index.commoncrawl.org/{CRAWL}-index"
print(f"crawl: {CRAWL}")
def fetch(params, tries=3):
url = f"{INDEX}?{urllib.parse.urlencode(params)}"
for attempt in range(tries):
wait = None
try:
return urllib.request.urlopen(
urllib.request.Request(url, headers=UA), timeout=120).read()
except urllib.error.HTTPError as e:
if e.code == 404:
return None # this crawl never captured the domain
if e.code not in (429, 500, 502, 503, 504):
raise
wait = e.headers.get("Retry-After") # the server's own number beats ours
except (urllib.error.URLError, http.client.IncompleteRead, TimeoutError):
pass # dropped connection
time.sleep(int(wait) if wait and wait.isdigit() else 5 * 2 ** attempt)
return b""
def coverage(domain):
"""(robots, content) for one domain, or None if the index never answered cleanly."""
query = {"url": f"{domain}/*", "output": "json", "pageSize": 1}
head = fetch({**query, "showNumPages": "true"})
if head is None:
return 0, 0
if not head:
return None
robots = content = 0
for page in range(json.loads(head)["pages"]):
body = fetch({**query, "page": page})
if not body:
return None
# CDXJ is one JSON object per line. Use split, not splitlines(): splitlines()
# breaks on several characters that are not newlines, which cuts records in half.
for line in body.split(b"\n"):
if not line.strip():
continue
try:
record = json.loads(line)
except json.JSONDecodeError:
return None # the page arrived incomplete
if record.get("url", "").rstrip("/").endswith("/robots.txt"):
robots += 1
else:
content += 1
time.sleep(5)
return robots, content
for domain in DOMAINS:
result = coverage(domain)
if result is None:
print(f"{domain}: no clean response")
else:
robots, content = result
print(f"{domain}: {robots + content} records, {robots} robots.txt, {content} content")
time.sleep(20)
出力結果:
crawl: CC-MAIN-2026-30
theguardian.com: 185 records, 185 robots.txt, 0 content
github.blog: 4700 records, 49 robots.txt, 4651 content
CC-MAIN-2026-30に対して実行すると、2つのドメイン行は上記のテーブルと一致します。新しいクロールでは異なる件数が返されますが、形状は維持されるはずです。theguardian.comはrobots.txtのみ、github.blogはコンテンツあり。コンテンツページのないレコードは、そのドメインのページコンテンツがクロールに含まれていないことを意味します。
How to query each source, and what the round trip costs
両サービスはCDXインデックスを公開していますが、レスポンス形式が異なります。Wayback CDXサーバーはJSON配列の配列を返し、Common Crawlのoutput=jsonはCDXJ(1行に1つのJSONオブジェクト)を返します。
Wayback CDXサーバーはキャプチャごとに1行を返します。サーバー側でフィルタリングするとレスポンスが小さくなり、ページングしやすくなります。
curl "https://web.archive.org/cdx/search/cdx?url=example.com&output=json&from=2026&limit=3&fl=timestamp,original,statuscode"
返される結果:
[["timestamp","original","statuscode"],
["20260101000936","http://www.example.com/","200"],
["20260101002937","https://example.com/","200"],
["20260101004445","https://example.com/","200"]]
レンダリングではなくアーカイブされたページをパースするには、生のキャプチャをリクエストします。タイムスタンプの後にid_を追加すると、ツールバーなし・リンク書き換えなしの元のバイトが返されます。
curl -sL "https://web.archive.org/web/2026id_/https://example.com/" -o raw.html
curl -sL "https://web.archive.org/web/2026/https://example.com/" -o rewritten.html
書き換えられたコピーにはweb.archive.orgへの参照が注入されており、DOM構造を基準とするセレクタが壊れる場合があります。
マッチタイプ以外に、CDX行の2つのフィールドと1つのクエリパラメータが、クエリの一致対象、変更検出の可否、コストを決定します。
urlkeyはURLのSURT形式です。https://github.blog/はblog,github)/としてインデックスされます。ホストが逆順になり、その後にパスが続きます。プレフィックスクエリとレンジクエリはそのキーに対して動作するため、www.の扱いとクエリ文字列の順序がクエリの一致を左右します。
digestはペイロードのSHA-1をbase32エンコードしたもので、WARCレコードがWARC-Payload-Digestとして保持する値です。16進数のダイジェストとは一致しません。したがって変更検出はインデックス操作となり、同じダイジェストを持つ2行は同一のペイロードバイトを持ちます。
collapseはそれを実際に必要なクエリに変換します。Wayback CDXサーバーに2024年のexample.comの全キャプチャを要求すると130,115行が返されます。同じクエリにcollapse=timestamp:8を追加すると366行、つまり1日1行が返されます。タイムスタンプはYYYYMMDDhhmmss形式なので、8桁に切り捨てると日付でコラプスされます。collapse=digestでは17,448行、つまり隣接するキャプチャ間の変更ごとに1行が返されます。Common CrawlのインデックスはこのパラメータをAcceptしますが無視するため、どちらも同じ行が返されます。
pageとpageSizeによるページネーションは結果行ではなくインデックスブロックを数えます。ブロックサイズは変動します。1つのクエリで隣接する2つのブロックが2,032件と4,726件を返しました。Wayback CDXサーバーにmatchType=domainとpageSize=1でbbc.comを照会すると28,257ページと報告されました。
フィルタがそのブロック内の何にも一致しなかっただけでページが空になることがあり、それは結果セットが終了したことを意味しません。デフォルトのpageSizeは1で、ドキュメントには最大値が記載されていません。
Common Crawlのインデックスも同様のページネーションを使用しますが、3つの違いがあります。showNumPagesは裸の数値ではなくJSONを返し、デフォルトのpageSizeは1ではなく5で、ブロックサイズも異なります。ループのサイズは想定ブロックサイズではなくshowNumPagesから算出し、ページ数は使用するpageSizeで変わるため、使用予定のpageSizeでページ数を取得してください。
イテレーションには2つの方法があります。デフォルトはリミットモードで、limitと再開キーで結果セットを走査します。ページモードは代わりにpageとpageSizeを使用します。ページモードはページ数を事前に把握でき、複数ワーカーへの分散が可能です。リミットモードは通常リクエスト数が少ないですが、幅広い日付範囲でキャプチャが少ないURLではスキャンが長くなりタイムアウトする場合があります。
Common Crawlはフェッチ手順を逆にします。1ページの取得コストはファイルダウンロードではなく単一のレンジリクエストです。インデックスはファイル名、バイトオフセット、長さを提供するため、HTTPレンジリクエストで1レコードを取得できます。CDXJは1行に1オブジェクトを置くため、以下のコードはボディ全体をパースせず1行を読み取ります。
import gzip, json, urllib.error, urllib.parse, urllib.request
url = "https://example.com/"
crawl = "CC-MAIN-2026-30"
q = urllib.parse.quote(url, safe="")
# Common Crawl asks API clients for a properly formed UserAgent. Use your own.
ua = {"User-Agent": "coverage-check/1.0 ([email protected])"}
# Step 1: ask the index which WARC file and byte range holds this page.
index = f"https://index.commoncrawl.org/{crawl}-index?url={q}&output=json&limit=1"
try:
req = urllib.request.Request(index, headers=ua)
rec = json.loads(urllib.request.urlopen(req, timeout=60).read().split(b"\n")[0])
except urllib.error.HTTPError as e:
if e.code != 404:
# 502, 503 and 504 all mean try again later, not "not captured".
# Treating them as a miss under-reports coverage.
raise
# A URL this crawl never captured returns 404. That is the normal case for a
# blocked domain, not an error in your code.
raise SystemExit(f"{url} is not in {crawl}")
# Step 2: fetch only those bytes.
offset, length = int(rec["offset"]), int(rec["length"])
warc = "https://data.commoncrawl.org/" + rec["filename"]
req = urllib.request.Request(warc, headers={**ua, "Range": f"bytes={offset}-{offset + length - 1}"})
record = gzip.decompress(urllib.request.urlopen(req, timeout=60).read())
print(record.decode("utf-8", "replace")[:400])
これはレスポンスヘッダーとページHTMLを含む圧縮済みWARCレコードを1つ返します。サンプリングした29件のコンテンツレコードでは、圧縮サイズは7〜45KiBで、約900MiBのファイルからレンジリクエストでキロバイト単位のデータを取得します。同じ手順はインデックスサーバーが一覧表示するどのクロールにも機能します。
コーパス規模の作業には、Common CrawlのURL Indexが同じインデックスをParquetで追加列付きで提供しており、s3://commoncrawl/cc-index/table/cc-main/warc/に公開されています。ローカルではDuckDB、AWSではAthenaで照会できます。Common Crawlは列指向インデックスを月次クロールあたり約300GBとし、2025年9月時点でAthenaのフルスキャンを約1.50ドルと説明していますが、ほとんどのフィルタリング済みクエリはそれ以下です。データアクセス自体はAWS Open Dataプログラムを通じて無料で、data.commoncrawl.orgはAWSアカウント不要ですが、自社クラウドプロバイダーからのエグレス費用は自己負担です。
Rate limits and quotas you will hit
Common CrawlのFAQには、CDXエンドポイントは「頻繁に悪用されるため、大幅なレート制限がかかっている」と記載されています。HTTP 503はスローダウンを意味し、一時的にブロックされたIPは24時間待機する必要があります。ガイダンスでは、呼び出し間のスリープ、1つのIPからの複数スレッドの回避、プロキシネットワークの回避、RFC 9110に準拠した適切なUser-Agentの送信も求めています。プロキシ条項は特に注目すべき点です。FAQのブロックとスレッドに関するガイダンスはどちらもIPを対象としているため、より多くのアドレスにジョブを分散させると制限を回避することになり、その結果は503ではなくアドレスのブロックとなります。
Internet ArchiveはSave Page Nowのクォータを公表していますが、読み取りAPIについてはほとんど公表していません。Save Page Now 2仕様には以下の制限が記載されています。
| 制限 | 認証済み | 匿名 |
|---|---|---|
| 1分あたりのキャプチャ数 | 7 | 3 |
| 1日あたりのキャプチャ数 | 30,000 | 200 |
| 1日あたりのアーカイブバイト数 | 5 GB | 2 GB |
| 同一URLの1日あたりのキャプチャ数 | 5 | 5 |
仕様にはこれらの数値を超える有料ティアの記載はなく、大量利用者はInternet Archiveへのメール問い合わせを案内しています。仕様では匿名の数値として2GBと500MBの両方が記載されており、変更履歴では認証済みの数値が4GiBに引き下げられていますが、テーブルには依然として5GBと記載されています。
読み取りAPIについては、Internet Archive外部からの情報があります。wayback PythonクライアントのメンテナーがInternet Archiveスタッフとの会話をまとめ、その結果をライブラリのデフォルト値としてエンコードしました。この記録はInternet Archiveの公式発表ではありません。
/cdx/search/cdxと/web/timemap/エンドポイントは現在同じサーバー上の1つのサービスとなっており、outputパラメータの読み取り方のみが異なり、単一のレート制限プールを共有しています。そのプールは両エンドポイント合計で毎分30リクエストです。カウンターがアドレスとアカウントのどちらに紐付けられているかは記載されていないため、複数ワーカーに分散させても予算が倍増するとは限りません。メメントエンドポイントは再生を担当し、別のプールから利用します。
ライブラリはこれらの制限をデフォルト値としてエンコードしており、Internet Archiveスタッフがクライアントにハード制限の80%で動作するよう求めた後、CDXは0.8 * 30 / 60、再生は0.8 * 600 / 60としています。つまりCDXは毎分30ではなく24リクエスト、再生は480リクエストです。上限ではなくこれらの値を基準に設計してください。
archive.org/wayback/availableの可用性エンドポイントは独自の制限が公表されていない第三のサービスなので、無制限ではなく制限ありとして扱ってください。レスポンスにRetry-Afterが含まれている場合はそれを尊重してください。含まれていない場合、waybackクライアントは再試行前に60秒間一時停止します。
Why archive.today captures cannot be verified on their own
archive.todayはキャプチャ時にブラウザでページをレンダリングし、robots.txtを無視するため、Wayback Machineにないページを保持しています。引用ワークフローはそのカバレッジのためにarchive.todayを採用しました。
archive.todayはWARCではなく可変HTMLを保存するため、ペイロードダイジェストがなく、キャプチャ内に照合するものが何もありません。運営者がアーカイブされたページを改ざんしたという証拠が提示され、WikipediaはサイトをDeprecatedとしてスパムブラックリストに追加しました。最終声明では別の根拠が示されており、サイトが訪問者のブラウザをブログへのサービス拒否攻撃に利用するコードを埋め込んだと述べ、改ざんされたスナップショットは追加的なものとして扱っています。
archive.todayから引用しているものはすべて第二の情報源で再検証してください。同ページには2026年6月時点でもコールレートを下げてコードが存在していたと記録されており、サイトを利用する必要がある場合はコンテンツブロッカーの背後で読み込むよう案内しています。
National archives, formats, and replay tools
Arquivo.pt:ポルトガルの国立ウェブアーカイブはWayback Machineにない全文検索APIを提供しています。arquivo.pt/textsearchへのGETリクエストは結果ごとにlinkToExtractedTextを含むJSONを返すため、HTMLパースが不要です。APIは無料でキーも不要で、ドキュメントに記載された制限は1つのIPから60秒あたり250リクエストであり、全文検索とURL検索で共有されており個別予算はありません。この制限を超えると永久ブロックの根拠となると記載されており、Common Crawlのブロックは一時的です。カバレッジはポルトガル語を中心としており、レイテンシは不均一で単一結果クエリで3秒未満から18秒まで幅があるため、クライアントのタイムアウトを30秒に設定してください。
WARCとWACZ:WARCはアーカイブコンテナで、WARC 1.1をカバーするISO 28500:2017として標準化されています。WARC 1.2は存在しません。WACZはWARCレコードをCDXインデックスと共にパッケージ化し、サーバーなしでブラウザが再生できるようにします。1.2.0ドラフトが公開されていますが、wacz/latestは依然として1.1.1を提供しているため、1.1.1を基準に実装してください。
Browsertrix:独自のキャプチャが必要な場合、WebrecorderのクローラーはWACZファイルを生成し、ReplayWeb.pageを通じてサーバーなしでブラウザ上で再生できます。ホスト型プランはエントリープランで月額30ドルから始まり、クローラーはオープンソースのため自己ホストも可能です。
How to choose
問いの形から始めましょう。特定のURL、バルクテキスト、またはどちらのサービスも提供しない特性のいずれかです。
URLと日付が重要な場合はWayback Machineを使用してください。削除されたページの復元、編集前にサイトが何を述べていたかの証明、時系列での製品ページの追跡、または廃止されたドキュメントセットの再構築などに使用します。個別URLの時間的深度において匹敵する汎用オプションはありませんが、国立アーカイブはその範囲内で同等の深度を持つ場合があります。
証拠として使用する場合は、キャプチャ以上のものを予算に組み込んでください。米国の裁判所はWaybackのキャプチャを認めていますが、キャプチャは自己認証ではないため、印刷物だけでは不十分なことが多いです。裁判所が認めてきた方法はInternet Archiveの宣言書であり、2025年初頭に公表された料金では1リクエストあたり250ドル、URLごとに20ドル、またはPDFなどダウンロード可能ファイルを含むURLは30ドルです。
多数のページが必要でどれでも構わない場合はCommon Crawlを使用してください。言語コーパス、モデルの事前学習、リンクグラフ分析、多数のホストにわたるセキュリティリサーチ、ランクに偏ったサンプルが許容される測定など。大規模なオープン事前学習コーパスのほとんどがCommon Crawlを利用しており、C4、RefinedWeb、FineWeb、Dolmaが含まれます。生のクロールではなくコーパスが必要な場合は、これらの派生物とそのライセンスを先に確認することをお勧めします。LLMトレーニングデータソースの調査が出発点になります。サンプリングポリシーによりカバレッジが予測不能なため、特定のサイトのカバレッジを保証する用途には使用しないでください。
Sichang Steven Heらによる研究では、Common Crawlの約100,000サイトを分類し、その6.0%が人間の入力がほとんどないテキストで占められていることが判明しました。2025年前半に初めて確認されたサイトでは、その割合は29.4%に上昇しており、2022年後半に初めて確認されたサイトの2.1%から増加しています。
6.0%と29.4%はいずれも過少推計と読んでください。著者らは分類器の精度とサイトを生成したモデルのベンチマークスコアの間に強い負の相関があると報告しており、生成器が改善するにつれて分類器が見逃す割合が増加します。
どちらのサービスも提供しない特性が必要な場合は国立アーカイブまたは自己運営アーカイブを使用してください。アーカイブされたコンテンツの全文検索、エンドツーエンドで管理するキャプチャ、または他の場所で再生がうまくいかないクライアントレンダリングされたページなど。
archive.todayは異なる理由で除外されます。事後に変更される可能性のあるキャプチャは、単独では証拠として成立しません。
多数のホストにわたるバルク作業には、まずCommon Crawlで広範囲かつコスト効率よく照会し、クロールが見逃したものはWayback Machineにフォールバックしてください。既知のURLリストがある場合は逆順にしてください。Common Crawlの照会のほとんどはミスとなり、ドキュメントに記載された過剰使用のペナルティが24時間ブロックであるインデックスに対して各照会がリクエストを消費します。そして長期的に重要なドメインは、並行してWARC生成クローラーで独自のキャプチャを取得してください。それは可用性を自分でコントロールできるコピーです。
独自のクローラーを運用するにはストレージ、再生インフラ、どちらの公開サービスも課金しないメンテナンス負担がかかります。アクセスを失うと何かが壊れる場合は自己運用し、その他は公開アーカイブまたは購入したコレクションに頼ってください。
When you need collection instead of an archive
どちらのサービスも、特定のサイトをスケジュールに従って収集するように設計されていません。Save Page Nowはオンデマンドで収集しており、認証済みの場合は毎分7キャプチャ、未認証の場合は3キャプチャで動作します。
照会した4つのニュースドメインはすべてCC-MAIN-2026-30にコンテンツページがありませんでした。どちらもカバレッジ保証、SLA、またはエスカレーション可能なサポートコミットメントを公表していません。
スケジュールに従って特定のサイトを収集し、自分でカバレッジを定義する必要がある場合、それはアーカイブではなくコレクション製品です。クロールは存在するものを発見し、ターゲット収集は既知のページをオンデマンドで返します。クローリングとスクレイピングの比較ガイドでは、その違いを詳しく説明しています。
コレクションにお金を払ってもブロックの免除は得られません。パブリッシャーはアーカイブクローラーと同様に商用クローラーも制限します。サイトが防御を変えた場合、ベンダーはメンテナンスを誰が担うかを変えるだけです。
Bright Dataはターゲット収集を販売しています。Web Scraper APIは1,000レコードあたり1ドルで、毎月最初の5,000件は無料です。既製データセットは250ドルの最低金額で1レコードあたり0.0025ドルから提供しています。どちらも対応サイトを継続的にカバーしています。どちらもWayback Machineの代替にはなりません。その理由は日付範囲にあります。事前収集データは数日から数ヶ月前まで遡れますが、1996年までは遡れないため、2014年にページが何を述べていたかという問いには依然としてアーカイブを参照する必要があります。
Next steps
重要なドメインに対してカバレッジスクリプトを実行し、同じドメインをWayback CDXサーバーでキャプチャ密度を確認してください。
コンテンツレコードはバルク作業が可能かどうかを示し、キャプチャ密度はURL単位の履歴が可能かどうかを示します。健全な件数は確約ではなく読み取り値です。サンプリングポリシーは下限を保証せず、クロールあたりの合計は2024年以降約4分の1減少しているため、依存する前に確認を再実行してください。
アクセスを失うと何かが壊れる場合は今すぐ重要なものをキャプチャし、残りは収集を購入し、キャプチャしたものはWARCで保持してポータビリティを維持し、両方の公開アーカイブは依存するストレージではなく照会するソースとして扱ってください。
Frequently asked questions
Can I use Common Crawl commercially?
利用規約はこれを許可しており、リスクはユーザーが負います。Common Crawlは総責任を100ドルに制限し、クロールされたコンテンツを使用してAIシステムを開発、訓練、または展開することから生じるクレームに対してユーザーが補償することを求めています。Common Crawlは商用利用の前に法的アドバイスを推奨しています。
Can you download all Wayback Machine data?
バルクでは不可能です。Internet Archiveは一般的なウェブアーカイブのバルクエクスポートを公表しておらず、アクセスはレート制限付きAPIを通じて行われます。研究規模の分析にはInternet ArchiveがARCH(コンピューティングプラットフォーム)を提供していますが、見積もり制で公表された価格はありません。
What rate should I design a Wayback CDX client against?
毎分24リクエストを基準に設計してください。制限はInternet Archiveが公表していない毎分30リクエストで、CDXとtimemapエンドポイントが1つのサービスになって以来共有されており、waybackクライアントはその80%をデフォルトとして実装しています。再生は毎分600リクエストの別プールなので、そちらは480を基準に設計してください。
Why does a Common Crawl domain lookup return records but no content?
それらのレコードがrobots.txtのフェッチだからです。CCBotはアクセスするすべてのホストからrobots.txtをリクエストし、サイトがCCBotを拒否すると、そのリクエストとそのリダイレクトのみがクロールに保持されます。ドメインがカバーされていると結論付ける前に返されたURLを分類し、プレフィックスクエリとドメインクエリで異なる件数が返される場合があるため、マッチタイプを明記してください。