確実に検出するためにPythonでUser-Agent文字列を解析する最良の方法は何ですか?
またはおそらくそれを行うヘルパーライブラリ
私自身の質問に答える;)
最後に、提案#1、つまり自分で提案することにしました。そして私は結果に満足しています。パッチなどを自由に使用/変更/送信してください。
ASparser for Python Hicro Keeによる。バージョンチェック付きのリモートサーバーからのデータファイルとキャッシュの自動更新。
Werkzeugには、ユーザーエージェント解析機能が組み込まれています。
新しいリンク(2018年6月) http://werkzeug.pocoo.org/docs/0.14/utils/#module-werkzeug.useragents
これらの提案を Firefoxユーザーエージェントの完全なコーパス に対して実行したところ、比較のためのバージョン番号の解析が非常に悪いことがわかりました。
それが必要な場合は、以前は browserscope プロジェクトの一部であった Aparser を確認することをお勧めします。 ドキュメントはこちら
この質問に対する他の回答は現在かなり古いものです。 Browser User Agent解析の新しい標準はBrowserscopeの user agent parser だと思います。
また、 多くの他の言語 で、まったく同じ一致パターンで便利に利用できます。いつかJavaScriptで一部のUA文字列も解析したいと思うかもしれませんし、一貫性のない解析について心配する必要はありません。
Th ブラウザキャップパーサー が機能するはずです。少し遅いかもしれません。
ただし、これらすべてをPython=側で解析する場合は、 http://browsers.garykeith.com/downloads.asp にあるXML/INIファイルを使用できます。 =ユーザーエージェントで検索を行うこれは、phpのget_browser()関数で使用されるファイルと同じです。