是否存在用户代理到浏览器品牌映射的数据库?

时间:2011-08-04 09:01:46

标签: browser user-agent browser-detection

在我的应用程序中,我想保存用户上次使用的浏览器,以避免在用户试图查明他们是否使用IE7或IE8时花费大量时间在手机上。存储用户代理字符串可能对我来说很好,但是,如果可能的话,我想存储和显示品牌名称和版本,即“正常”人类可读的东西,如“Mozilla Firefox 3.6”。

所以我的问题是:是否有某种类型的数据库收集用户代理字符串并将它们映射到品牌名称并提供我可以在开发中使用的数据?如果没有,您是否知道任何解析用户代理字符串并返回品牌名称的成熟软件?

1 个答案:

答案 0 :(得分:4)

使用正则表达式或简单的字符串搜索,可以很容易地从用户代理字符串中解析出品牌名称和版本。

这是一个捕捉浏览器&的正则表达式示例版。您可能希望将“MSIE”映射到“Internet Explorer”或其他内容。

(MSIE|Firefox|Chrome)(\s|\/)(\d{1,3}\.\d)

但是否则您可以在FireFox中找到用于“用户代理切换器插件”的this列表或仅使用移动浏览器找到this list的列表。第一个链接提供了几乎所有用户代理/浏览的匹配描述。