37

ユーザー エージェント文字列をどのように解析しますか? 私は取得しようとしています:

  • ブラウザ
  • ブラウザのバージョン
  • OS
  • OS バージョン

ユーザーエージェント文字列から。私のアプリは perl で書かれており、以前はHTTP::BrowserDetectを使用していました。それは少し時代遅れで、もはや維持されていません。(編集: それ以来更新されています。) 実際のルックアップに perl を使用することに縛られているわけではありません。

私は、automagic 構文解析は失われた原因であるという結論に達しました。私は、分類されていない UA のリストを表示し、それらを手動で最新の状態に保つために、crud タイプのアプリを作成することを考えていました。

利用できるリソースは既に存在しますか? HTTP 呼び出しを行ってユーザー エージェント情報を検索できたら最高です。

ありがとう!

4

10 に答える 10

22

useragentstring.comには、ユーザー エージェント文字列のブラウザーと OS の情報があります。独自の文字列を送信するための「分析」ボックスもあります。自動的に接続するのがどれほど簡単かはわかりませんが、必要な種類の情報が含まれているようです.

元の投稿からの更新 (賛成票を盗みたくない):

http://useragentstring.com/の作成者からこれを取り戻しました。

私は単純な API を持っていますが、サイトの多くを再コーディングしようとしているので、近い将来変更される可能性があります。私のサイトにリンクする場合は、フォーム フィールドまたはクエリ文字列で「uas」という名前の useragentstring を送信できます。

http://www.useragentstring.com/?uas=Opera/9.70%20(Linux%20i686%20;%20U;%20en-us)%20Presto/2.2.0

これにより、文字列が自動的に解析されます。&getText=all を追加すると

http://www.useragentstring.com/?uas=Opera/9.70%20(Linux%20i686%20;%20U;%20en-us)%20Presto/2.2.0&getText=all

agent_type=Browser;agent_name=Opera;agent_version=9.70... のようなキーと値のペアを含むテキスト ファイルを取得します。

于 2009-09-22T00:40:02.387 に答える
5

ブラウザー機能プロジェクト

browscap.ini ファイルは、ブラウザーとその機能 (名前、バージョン、Javascript サポートなど) に関する多くの詳細を提供するデータベースです。

名前、バージョン、Javascript サポートなど、ブラウザーとその機能に関する多くの詳細を提供する browscap.ini。

PHP のネイティブ get_browser() 関数はこのファイルを解析し、すべてのブラウザーの詳細に関する完全な情報を提供します。

http://browscap.org/

于 2014-06-06T05:47:58.890 に答える
4

はい。http://www.user-agents.org/

于 2009-09-21T23:20:41.330 に答える
3

UAの検索可能なリストを探していました。user-agents.orgは検索可能ですが、十分なデータがありませんでした。http://www.botsvsbrowsers.com/を見つけました。広告が散らかっていますが、右側に私が探していた検索バーがあります。

于 2012-08-28T19:52:42.750 に答える
3

このスレッドは数年前のものですが、ここにユーザー エージェントを探すための新しいリソースがあります。540万のエージェントを持つua.theafh.netです。たとえば、ブラウザをフィルタリングしてワイルドカード検索を使用できます: http://ua.theafh.net/list.php?s=%22%2A%22&include=yes&class=abr&do=desc - 検索結果をダウンロードする可能性もありますCSVとして

于 2016-01-08T14:58:40.767 に答える
0

質問を投稿してから、HTTP::BrowserDetectが更新されました。インストールしたら、それを使用してユーザー エージェント文字列のテキスト ファイルを解析する方法を次に示します。

cat user_agent_strings.txt | perl -nE 'use HTTP::BrowserDetect; $ua =  HTTP::BrowserDetect->new($_); say $ua->browser_string || "unknown";'
于 2015-12-28T11:11:30.483 に答える