web-dev-qa-db-ja.com

User-Agent HTTPヘッダーからのオペレーティングシステム

User-Agent HTTPヘッダー文字列->オペレーティングシステムをマップする適切な最新のリストはどこにありますか?

57
C. Dragon 76

ここに簡単なリストがあります...興味のあるものを見逃したかどうか教えてください。

http://www.geekpedia.com/code47_Detect-operating-system-from-user-agent-string.html

//ユーザーエージェント文字列をオペレーティングシステムと一致させる
Windows 3.11 => Win16、
Windows 95 =>(Windows 95)|(Win95)|(Windows_95)、
Windows 98 =>(Windows 98)|(Win98)、
Windows 2000 =>(Windows NT 5.0)|(Windows 2000)、
Windows XP =>(Windows NT 5.1)|(Windows XP)、
Windows Server 2003 =>(Windows NT 5.2)、
Windows Vista =>(Windows NT 6.0)、
Windows 7 =>(Windows NT 6.1)、
Windows 8 =>(Windows NT 6.2)、
Windows 10 =>(Windows NT 10.0)、
Windows NT 4.0 =>(Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT)、
Windows ME => Windows ME、
Open BSD => OpenBSD、
Sun OS => SunOS、
Linux =>(Linux)|(X11)、
Mac OS =>(Mac_PowerPC)|(Macintosh)、
QNX => QNX、
BeOS => BeOS、
OS/2 => OS/2、
検索ボット=>(nuhk)|(Googlebot)|(Yammybot)|(Openbot)|(Slurp)|(MSNBot)|(Aee Jeeves/Teoma)|(ia_archiver)

51
Nescio

どの言語で開発していますか?これは、ユーザーエージェント文字列でデータマイニングを行う場合に利用できるものに大きな違いをもたらします。

Nescioの回答は良いリストです。リストのPHPの下にある2番目のリンクには、基本的に同じ情報が含まれており、任意の言語に翻訳できるはずです。

anythingにユーザーエージェントを使用すると、問題が発生することに注意してください。開発時間の一部をサイトにアクセスし、定期的なメンテナンスを行うユーザーエージェントの監視に専念する場合を除き、完全に行わないようにする必要があります。 OSを検出する必要があるユースケースに関係なく、すべてのプラットフォームのすべてのOSは非常に短い時間枠で劇的な変化を起こす可能性があるため、これに留意し、OS検出の方法と理由に注意することが重要です。

リスクについて詳しく説明する:デスクトップでは、6週間(Chrome OS)、6か月(Ubuntu)、1年(Mac OS)、または2〜3年(Windows)ごとに新しいOSバージョンがリリースされます。さらに、携帯電話、タブレット、ゲーム機用にリリースされたOSを考慮する必要があります。 clocks などは、リリースサイクルがはるかに頻繁になり、市場シェアが予測できないほど変化する可能性があります。 BlackBerry、Palm OS、Web OS、iOS、Android、Windows Mobile、およびWindows Phoneが過去数年で市場シェアをどのように変えたかを見てみましょう。

オペレーティングシステムがサイトの依存関係でない限り(アプリのターゲットとなる "ダウンロード"ページを作成している場合(それ自体が問題に満ちている可能性があります)、 機能の検出 。これにより、ブラウザまたはOS検出コードを常に維持しなくても、開発を将来にわたって保証できます。

14
Dan Herbert

ユーザーエージェントヘッダーは簡単に偽装できることに注意してください。重要なことは何も頼りません。

7
Sherm Pendley

UAスニッフィングを行うことは、ほとんど常に悪い考えです。まったく頼ることはできません。

クライアントにその環境に固有の応答を送信する場合は、おそらくコンテンツタイプまたはエンコーディングとの違いを区別する必要があります。これらは、 岩石で指定 です。

2
mkoeller

ブラウザーからのユーザーエージェントは、私が何かに依存するものではありません。私たちはすべて統計のためにそれを使用しますが、100%正確ではないことを知っています。

私はfirefoxを使用し、定期的になりすましIE気に入らないサイトでは、通常のUAは次のとおりです。

Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) 
Gecko/2008101315 Ubuntu/8.10 (intrepid) Firefox/3.0.3 

私は時々Firefox拡張機能を使用してそれを変更します:

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MS-RTC LM 8; 
.NET CLR 2.0.50727; .NET CLR 1.1.4322)

あなたがそれを見ているとき、あなたは異なる部分を解析する必要があるでしょう、OSは括弧の間のセミコロンで区切られた値の3番目の部分です。

2

私は同じものを探していましたが、見つけました:
http://www.useragentstring.com

すばらしいが、非常に手の込んだ:リストが必要なプロジェクトを再考したいと思うでしょう。これは、「物事を見通し」にするからです。

これを研究している将来の人々のためにこれを共有したかっただけです。

1
GitaarLAB

最近では http://user-agent-string.info からデータベースを推奨できます。ユーザーエージェントとオペレーティングシステム(利用可能な場合)を識別できます。

私はJavaライブラリADetectorを開発し、毎月新しいバージョンをマージしていますデータベース(別名UASファイル)、XMLおよびINI形式で入手可能。したがって、このデータは最新の状態に保たれていると私の経験から言えます。通常の更新間隔は5〜10です。日々。

1
before