User-Agent の解析
User-Agent 文字列から、ブラウザ・エンジン・OS・端末の種類を読み取ります。EdgeがChromeを名乗るような取り違えも避けられます。
User-Agent 文字列を貼り付けてください。
- ブラウザ —
- OS —
- 端末 —
読み取りの注意
補足
-
ほぼすべてのブラウザが
Mozilla/5.0を名乗り、他のブラウザの名前も含みます。 Edge は Chrome を、Chrome は Safari を名乗るため、素直に前から読むと取り違えます。 このツールは「後から出たブラウザほど先に判定する」順序で読みます。 -
Windows 10 と 11 は User-Agent では区別できません。どちらも
Windows NT 10.0です。 - iPadOS は既定で Macintosh を名乗ります(「デスクトップ用Webサイトを表示」)。 Macintosh と Mobile の両方があるときは注意を表示します。
- この判定で機能の有無を決めないでください。 User-Agent は自由に書き換えられ、ブラウザ側も値を削る方向へ動いています。 機能の有無は機能検出で判断し、このツールはアクセスログを読むときの補助としてお使いください。
- 「この端末のUAを入れる」を押したときだけ、ブラウザが持つ値を読み取ります(送信はしません)。
よくある質問
なぜChromeなのにSafariと書いてあるのですか?
歴史的な事情です。ほぼすべてのブラウザが Mozilla/5.0 を名乗り、他のブラウザの名前も含んでいます。Edge は Chrome を、Chrome は Safari を名乗ります。このツールは「後から出たブラウザほど先に判定する」順序で読むため、Edge を Chrome と取り違えません。
Windows 10 と 11 は見分けられますか?
見分けられません。どちらも Windows NT 10.0 と名乗るためです。User-Agent だけで区別する方法はなく、User-Agent Client Hints(sec-ch-ua-platform-version)が必要です。このツールはその旨を注意として表示します。
iPad が Mac として判定されます。
iPadOS の「デスクトップ用Webサイトを表示」設定が既定で有効なため、Macintosh を名乗ります。Macintosh と Mobile の両方が含まれている場合は、iPadは可能性があると注意を表示します。確実に見分けるにはタッチ対応の有無などを併せて見る必要があります。
この判定でブラウザごとの処理を分けてよいですか?
おすすめしません。User-Agent は自由に書き換えられ、ブラウザ側も値を削る方向へ動いています。機能の有無は User-Agent ではなく機能検出(その機能が存在するかを直接調べる)で判断してください。このツールはアクセスログを読むときの補助として使うのが向いています。
ボットかどうか分かりますか?
文字列に bot・crawler・curl・python-requests などが含まれているかで判定します。Googlebot のように名乗るものは見分けられますが、ブラウザを装うボットは見分けられません。判定の材料は名乗りだけなので、確実な識別には使えません。