開発者 🔒 ブラウザ内で動作 — データは送信されません

ユーザーエージェント解析ツール

どんなユーザーエージェント文字列からもブラウザー、OS、デバイスを読み取り、自分のUAを確認し、検索エンジンやAIのクローラーを識別できます。

ユーザーエージェント解析ツール — どんなUA文字列も読み解く

ブラウザー、クローラー、スクリプトは、リクエストのたびにユーザーエージェント文字列を送信します。このツールはその文字列を具体的な情報に変換します。ブラウザーとそのバージョン、レンダリングエンジン、OS、デバイスの種類です。ページを開くとすぐに自分のユーザーエージェントを表示し、検索エンジンのクローラー、AIクローラー、リンクプレビュー用のボット、コマンドラインツールも識別します。

ユーザーエージェントからもう読み取れない情報についても説明します。現在のブラウザーはプライバシー保護のため文字列の一部を固定したり省略したりしています。そのため、Windowsのバージョン、macOSのバージョン、スマートフォンの機種が読み取れない場合は注記で説明し、代わりにブラウザーが報告する情報をClient Hintsの表に表示します。

使い方

  1. 自分のユーザーエージェントがあらかじめ入力されています。テキストを変更した後は自分のユーザーエージェントを使うで元に戻せます。
  2. サーバーログの1行など、ほかの文字列を貼り付けるか、サンプルから選びます。
  3. ブラウザー、エンジン、OS、デバイス、そしてクローラーやツールであればその名前を確認します。
  4. 結果の下の注記を読みます。Chromium系のブラウザーならClient Hintsの表も確認します。

ユーザーエージェント文字列の構造

Windows版Chromeの典型的な文字列はMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36です。意味のある情報を含むのは一部だけです。

部分意味
Mozilla/5.0現在は意味なし。歴史的な互換性のためにすべてのブラウザーが送信する
Windows NT 10.0; Win64; x64OSとプロセッサーのアーキテクチャ
AppleWebKit/537.36 (KHTML, like Gecko)エンジンの系譜。これも互換性のために残されている
Chrome/129.0.0.0ブラウザーとそのメジャーバージョン
Safari/537.36これも互換性のためのトークンで、Safariを意味しない

このように名前が重なっているため、判定の順序が重要です。EdgeはChromeとSafariも名乗り、ChromeはSafariも名乗ります。このツールは最も具体的な名前から順に判定します。

文字列からもうわからないこと

  • Windows 11:Windows 10と同じWindows NT 10.0を送信します。
  • macOS:Safari、Chrome、Firefoxはバージョンを10_15_7に固定しています。
  • Android:Chromeは実際のバージョンや機種にかかわらずAndroid 10; Kを送信します。
  • ブラウザーのバージョン:Chromium系のブラウザーはメジャーバージョンだけを送信し、その後に.0.0.0が続きます。
  • iPad:デスクトップモードではMacと同じ文字列を送信します。

これらの詳細に代わるのがUser-Agent Client Hintsです。サイトが要求すると、ブラウザーはプラットフォームのバージョン、機種、ブラウザーの完全なバージョンを返します。このページの表がWindows 11とWindows 10を区別できるのはそのためです。SafariとFirefoxはClient Hintsに対応していません。

クローラーとAIボット

主要な検索エンジンのクローラー(Googlebot、Bingbot、YandexBot、Baiduspider、DuckDuckBot、Applebot)、AIクローラー、SNSやメッセージアプリのリンクプレビュー用ボット、SEOクローラー、そしてcurl、Wget、Python Requestsなどのツールを識別します。AIクローラーは3つのグループに分かれ、ツールはそれぞれにラベルを付けます。

グループ例役割
学習用GPTBot, ClaudeBot, CCBot, Bytespider, Meta-ExternalAgentAIモデルの学習用にページを収集する
AI検索OAI-SearchBot, Claude-SearchBot, PerplexityBotAI検索エンジンが引用できるようにページをインデックスする
ユーザー起点ChatGPT-User, Claude-User, Perplexity-User人がアシスタントに質問したときに、そのページを1つ取得する

Google-ExtendedとApplebot-Extendedは別物です。これらはrobots.txtのルールで使う名前にすぎず、リクエストには現れません。クロールするのはGooglebotとApplebotで、これらのルールはページをAIの学習にも使ってよいかどうかを決めるものです。

ユーザーエージェントは誰でも偽装できます。名前でクローラーを信頼したりブロックしたりする前に、IPアドレスを確認してください。検索エンジンなら逆引きDNS、それ以外は運営者が公開しているIP範囲で確認します。robots.txtのルールもこの名前で指定します。たとえばUser-agent: GPTBotです。

関連ツール

クローラーのネットワークを確認するには、サブネット計算ツールでその範囲を調べます。ログにURLエンコードされた状態で記録されたユーザーエージェントは、まずURLデコードツールでデコードしてください。自分のブラウザーだけを表示するタスクページユーザーエージェント確認もあります。