Claude CodeもCodexも、AIに「ちょっとググってきて」と頼める検索機能を標準で持っています。使っている側からすると、どちらも「質問したら最新情報込みで答えが返ってくる」だけなので、同じものに見えます。
ところが中身を覗くと、外に出てくる情報の量がまるで違います。理屈を並べる前に、まずは同じ検索を1回投げたときに何が起きるか、結論から見てください。
まず結論:同じ検索でも、見えるものがこう変わる
仕組みの説明はあとにして、同じ検索を1回投げたときに「外から見えるもの」を並べます。例として、ラーメン屋を探させてみます。以下はイメージをつかむためのサンプルで、実在の検索結果ではありません。
Claude Codeに「新宿の人気ラーメン店を調べて」と頼むと、AIの手元はこう見えています。
検索したクエリ: 新宿 ラーメン 人気 2026
返ってきた結果(AIの手元に届く):
1. https://example.com/shinjuku-ramen-best 新宿のラーメン人気店15選【2026年版】
2. https://example.gourmet.jp/area/shinjuku/ramen 新宿エリアのラーメンランキング
3. https://example-blog.net/2026-shinjuku-tsukemen 新宿でつけ麺ならここ、という個人的な結論
→ この一覧を見たうえで、AIが答えをまとめる まったく同じことをCodexに頼むと、外に見えるのはこれだけです。
検索したクエリ: 新宿 ラーメン 人気 2026
返ってきた結果: (外には出てこない・AIの中だけで処理される)
→ 「新宿のラーメンなら○○がおすすめです」という答えだけが返る 同じ「ラーメンを調べる」でも、片方は検索結果の一覧が手元に残り、もう片方は答えしか残りません。たったこれだけの差ですが、これがこの記事で説明する違いの、すべての出発点です。ここから「なぜそうなるのか」「それで何が変わるのか」を順に見ていきます。
一番の違いは「検索結果が見えるか、消えるか」
両者の決定的な差はここに尽きます。
Claude Codeの検索は、検索した瞬間に結果のURL・タイトル・更新時期が一覧でAIの手元に渡ります。だからAIは「1位はこのサイト、2位はこれ」と中身を把握した上で、必要なページを開いて読みにいけます。出てきた答えに引用元リンクが付くのも、この一覧が手元にあるからです。
Codexの検索はそうではありません。検索はAIの内部で実行され、外に出てくるのは「どんな言葉で検索したか」と「AIの最終的な答え」だけ。検索結果のURL一覧は外側からは見えません。だから外側のプログラムから「実は上位にこのサイトがあったよね?」と検証することができません。AIが「見つからなかった」と言ったら、本当に無かったのか拾い損ねたのか、外から確かめる手段がないわけです。
同じ「AIにググらせる」でも、片方は検索エンジンの結果ページがそのまま残り、片方はAIの感想文しか残らない。この差が、後で効いてきます。
さっきの一覧は、実際にはこんなデータで届く
冒頭でClaude Code側は「結果の一覧が見える」と書きましたが、その一覧は実際にはきれいに整理されたデータの形でAIの手元に届きます。先ほどのラーメン検索を、本物の返り値に近い形で見るとこうなります。引き続きサンプルで、実在の結果ではありません。
{
"type": "web_search_tool_result",
"tool_use_id": "srvtoolu_xxxx",
"content": [
{
"type": "web_search_result",
"url": "https://example.com/shinjuku-ramen-best",
"title": "新宿のラーメン人気店15選【2026年版】",
"page_age": "2026年5月10日"
},
{
"type": "web_search_result",
"url": "https://example.gourmet.jp/area/shinjuku/ramen",
"title": "新宿エリアのラーメンランキング",
"page_age": "2026年4月2日"
},
{
"type": "web_search_result",
"url": "https://example-blog.net/2026-shinjuku-tsukemen",
"title": "新宿でつけ麺ならここ、という個人的な結論",
"page_age": "2026年3月18日"
}
]
} ポイントは、1つのクエリに対して複数件がまとめて配列で返ること。各件にURL・タイトル・更新時期が揃っているので、AIはこの中から「更新が新しくて信頼できそうなページ」を選んで開きにいけます。
Codexで同じ検索をしても、この配列に相当するものは外に出てきません。出てくるのは「新宿 ラーメン 人気 2026 と検索した」という記録と、「新宿のラーメンなら○○がおすすめです」という最終回答だけ。途中のURL一覧は本人(AI)の中だけにあって、外側からは触れません。
「1回で10件」ではない
Googleの検索APIだと「1リクエストで10件、続きは11件目から」と件数がきっちり決まっています。ここから類推すると、Claude Codeの検索も「1回で必ず○件」と思いたくなりますが、そうではありません。
Claude Codeの検索は返ってくる件数が固定されていません。多いときも少ないときもあり、まばらです。これは公式の課金ルールにも表れていて、「1回の検索は、返った結果の件数に関わらず1カウント」と決められています。件数が固定なら、わざわざ「件数に関わらず」とは書きません。つまり何件返るかはクエリ次第で変動する、ということです。
なので「だいたい10件くらい返ってくる」と頭に入れつつ、それは保証された数ではない、という理解が正確です。
ページめくりはできない
もうひとつ、Googleの検索APIにできてClaude Codeの検索にできないのが「ページめくり」です。
Googleなら「11件目から20件目」と続きを指定して、結果を深く掘っていけます。Claude Codeの検索にはこの仕組みがありません。指定できるのは検索対象のドメイン絞り込みと、地域、そして検索を撃てる回数の上限くらい。「さっきの検索の続き(下位の結果)をもっと見せて」という操作ができないんです。
ではどうやって情報を集めるかというと、言葉を変えて検索し直すしかありません。「新宿 ラーメン 人気」で物足りなければ「新宿 ラーメン 深夜」「新宿 つけ麺 評判」と切り口を変えて何回も撃つ。その「何回まで撃っていいか」の上限だけを開発者が決められる、という設計です。だいたい単純な調べ物なら数回、しっかり比較したい調査なら10回以上撃つ、というのが目安になっています。
ここが地味に大事で、Claude Codeの検索は「同じ検索結果を深掘りする」方向には伸ばせず、「別の検索を何回もやる」方向にしか広げられません。取りこぼした下位の結果を確実に拾いにいく用途には向かない、ということです。
Codex側にもうひとつクセがある
Codexの検索には、結果が見えないこと以外にもうひとつ知っておくと得なクセがあります。
Codexは標準だと、毎回ライブでウェブを取りにいくのではなく、用意済みの検索インデックスを引きにいく作りになっています。手早く動く代わりに、内容がやや古いことがある、という性質です。今この瞬間の最新情報を確実に取りたいときは、ライブ取得に切り替える設定(その都度ライブで引くオプションや、設定ファイルでライブ固定にする項目)を使う必要があります。
「Codexに調べさせたのに情報が古かった」というのは、サボっているのではなく、この標準動作が理由のことがあります。
スクレイピングしたいなら、どっちが使いやすいか
ここまでの違いは、ウェブから情報を抜き出したいとき、つまりスクレイピング用途で素直に効いてきます。
まず前提として、どちらの検索ツールもスクレイパーではありません。検索はあくまで「どのページが存在するか」を知る入口で、ページの中身を狙って抜き出す機能ではない。その上で「検索でURLを集めて、各ページの中身を取りにいく」という流れを考えると、回しやすさに差が出ます。
この流れではClaude Codeの方が使いやすいです。理由は単純で、検索結果のURL一覧が手元に出るから。出てきたURLを次に開きにいける。Codexは一覧が外に出ないので、そもそも「どのページを取りにいくか」のリストが作れません。スクレイピングの起点になる「対象URLの束」が手に入らない時点で、検索結果を足がかりにする使い方には向きません。
ただしClaude Codeにも注意点があります。
- 付属のページ取得機能は、ページの生のHTMLをそのまま返すわけではありません。いったんAIが読んでマークダウンに整形した形で返ってきます。だから「表の3列目の値だけを正確に抜く」「特定のタグの中身だけ拾う」といった精密な抽出には向きません。整形の過程で要素が落ちたり順番が変わったりします。
- 検索結果に含まれるページ本文も、暗号化された形で渡されます。そのため本文のフルテキストをその場で生のまま読むことはできず、中身が欲しければ改めて取得しにいく二度手間になります。
- ログインが必要なページ(会員専用ページなど)は、そもそも取得が弾かれます。
Codex側の注意点は、標準がキャッシュ寄りであること。スクレイピングで「今の値段」「今の在庫」のような変動する情報を取りたいのに、標準のままだと古いデータをつかむことがあります。最新を取りたいならライブ取得に切り替えてから動かす必要があります。
そして両者に共通する、いちばん効く話。どちらも「コードを書いて自分で実行できる」エージェントです。本気で構造的に、大量に抜きたいなら、検索ツールに頼るのではなく、AIにスクレイピング用のコードを書かせて走らせる方が正確で確実です。検索ツールはあくまで入口の発見役と割り切る。「検索結果から軽く中身を拾う」程度ならClaude Codeの検索+取得で足りますが、「狙ったデータを欠けなく抜く」段階に入ったら、検索機能そのものではなく、書いたコードや専用のサービスに任せる、という線引きになります。
最後に道具とは別の注意点として、スクレイピングは相手サイトの利用規約や取得ルール、アクセスする頻度、そもそも取っていい情報なのか、を必ず確認してから動くこと。ここは便利さの話とは切り離して、毎回踏むべき手順です。
だから何が言えるか
- 検索結果のURL一覧が手元に残るのはClaude Codeだけ。Codexはクエリと答えしか残らない
- Claude Codeでも1クエリの件数は可変で、ページめくりはできない。撃てる回数の上限だけを決められる
- Codexは標準だとキャッシュ寄りで、最新を取るにはライブ設定がいる
実用面でひとつ言えるのは、「検索結果の上位URLを、順位ごとに機械的に総ざらいしたい」という要件には、どちらの標準検索も向いていないということ。Claude CodeはURL一覧こそ取れますが、ページめくりができないので網羅的な総ざらいには足りず、Codexはそもそも一覧が出てきません。そういう「検索結果ページを丸ごとプログラムで扱う」用途には、結局は順位や続きページを指定できる検索専用のサービスを別に用意することになります。
普段は意識しなくていい部分ですが、AIに調べ物を任せる頻度が増えてくると、「このツールは検索結果のどこまでを手元に残してくれるのか」を知っているかどうかで、設計の見通しがだいぶ変わってきます。


