User Agent Parserとは何ですか?
User-Agent パーサーは、ブラウザが送信した User-Agent リクエスト ヘッダーを読み取り、それをブラウザの名前とバージョン、レンダリング エンジン、オペレーティング システム、およびリクエストが送信されたデバイスの種類に分割します。すべての HTTP リクエストにはこの文字列が含まれており、これはサーバーが接続の反対側にあるものを尋ねることなく学習する最も一般的な方法です。ヘッダー自体は RFC 9110、HTTP セマンティクス仕様で定義されており、その形式は歴史的に乱雑になっている製品トークンとコメントの非構造化リストです。
その乱雑さがパーサーが存在する理由です。 最新の Chrome 文字列は依然として「Mozilla/5.0」で始まり、「Safari」という単語が含まれています。これは、ブラウザがサーバーの匂いを嗅ぐテストに合格するために 20 年をかけて他のトークンをコピーしたためです。 Edge は「Chrome」、Opera は「Chrome」、iPhone 上の Safari は実際のバージョンを「Safari/」トークンではなく別の「Version/」トークンで報告します。したがって、ユーザーエージェントを目で読むことはエラーになりやすいです。最も明白に見えるトークンは、実際のクライアントを識別するものではなく、下位互換性のために残されているトークンであることがよくあります。
このツールは、それらの癖が要求する検出順序を適用します。まず、別のブラウザ トークンを埋め込んだブラウザをテストするため、Edge は Chrome として誤読されず、Chrome-on-iOS 文字列は Safari として誤読されません。 Windows NT カーネル番号をマーケティング名にマッピングし、アンダースコアで区切られた iOS および macOS バージョンを点線の形式に変換し、リクエストをデスクトップ、モバイル、タブレット、またはボットとして分類します。また、既知のクローラーおよびオートメーション署名にもフラグを立てます。これは、単一のブラウザをデバッグするのではなく、Web サーバーのアクセス ログを読み取るときに最も役立つフィールドです。
作業例では、ユーザー エージェント文字列パーサーが何を返すかを示しています。 「Windows 上の Edge」サンプルをクリックすると、「解析済み」結果リストに Microsoft Edge 126.0.0.0、Blink 537.36、Windows 10 / 11、Desktop、x86-64 (64 ビット)、および Bot / クローラー No が表示されます。文字列には Chrome と Safari トークンも含まれていますが、Android 6.0.1 では Chrome を主張する Googlebot スマートフォン文字列を貼り付けます。ユーザー エージェント パーサーは依然としてブラウザと OS を読み取りますが、デバイスの種類は Bot / Crawler になり、ボット フラグは「はい」と表示されます。クローラーがログで電話ブラウザーの ID を借りるときに、その分割が求められます。
すべてがブラウザで実行されます。貼り付けた文字列は決してアップロードされません。これは重要です。なぜなら、独自のトラフィックからの実際のユーザー エージェントが正確なデバイスをヒントし、訪問者が使用しているビルドを行うことができるからです。サインアップも解析もネットワーク要求は発生しません。コピー ボタンだけが使用回数を記録し、文字列を送信せずに生産ログ ラインを貼り付けることができます。
User Agent Parser の使い方
User-Agent 文字列を貼り付けます
アクセスログ、ブラウザコンソール (navigator.userAgent) 、またはリクエストヘッダーからUA文字列をドロップインします。 または、組み込みサンプルの1 つをロードします。
解析したフィールドを読み取ります
ブラウザ、エンジン、オペレーティングシステム、デバイスの種類、CPUアーキテクチャ、ボットフラグは、入力すると即座に検出されます。押すボタンはありません。
デバイスの分類を確認してください
リクエストがデスクトップ、携帯電話、タブレット、または文字列が公開するデバイス モデルを備えた Googlebot などのクローラーからのものであるかどうかを一目で確認できます。
結果をコピーする
解析されたテーブルをタブ区切りのテキストとしてコピーして、スプレッドシート、バグ レポート、またはログ分析ノートに貼り付けます。
ユーザーエージェントパーサーの機能
正しい検出順序
Chrome よりも前に Edge、Opera、Samsung をテストし、その Version/トークンから Safari を読み取るため、埋め込まれた互換性トークンが誤読を引き起こすことはありません。
オペレーティングシステムのマッピング
Windows NT カーネル番号を名前に変換し、点線の iOS および macOS バージョンを復元し、Android、Chrome OS、Linux を認識します。
デバイスの分類
各文字列にデスクトップ、モバイル、タブレット、ボットとしてラベルを付け、user-agent に Android または Apple デバイス モデルが含まれるときにそのモデルを表示します。
ボットとクローラーのフラグ
ログ分析用に、Googlebot、Bingbot、curl、headless Chrome などの検索エンジン、ソーシャル、および自動化の幅広い署名セットと一致します。
Frequently Asked Questions
Related Tools
Basic Auth Generator
Turn a username and password into an HTTP Basic Authentication header, base64 token, curl commands and URL form, and decode existing Basic auth tokens back.
IP Subnet Calculator
Calculate the network address, broadcast, usable host range, subnet mask, and host count for any IPv4 address and CIDR prefix.
WHOIS Checker
Look up the registry record for any domain: registrar, registration and expiry dates, status codes, nameservers, DNSSEC and the raw WHOIS record.
WordPress Theme Detector
Find out which WordPress theme a site runs, with the version, the author, the parent theme and the evidence each answer came from.
Comments
0 comments
No comments yet. Be the first to share your thoughts!