python中的Http用户代理解析器

时间:2013-04-05 10:16:57

标签: python regex parsing http-headers user-agent

我想解析python中的User Agent字符串,并将以下类别的浏览器分类为
1)浏览器名称
2)浏览器版本
3)OS /平台名称
4)OS /平台版本
5)设备类型:移动/台式机/平板电脑/其他
如果它的手机/平板电脑那么 6)制造商/供应商名称
7)型号

那么,我可以用什么外部库来完成这项任务,我想在没有任何互联网连接的情况下离线完成所有这些工作。所以我有一个数据库,我只需要对其进行分类。

2 个答案:

答案 0 :(得分:0)

# Import the lib
from ua_parser import user_agent_parser

# Parse the user agent
user_agent_parser.Parse(request.META.get('HTTP_USER_AGENT'))

print result_dict['user_agent']
# {'major': '5', 'minor': '1', 'family': 'Mobile Safari', 'patch': None}

print result_dict['os']
# {'major': '5', 'patch_minor': None, 'minor': '1', 'family': 'iOS', 'patch': None}

print result_dict['device']
# {'is_spider': False, 'is_mobile': True, 'family': 'iPhone'}

上面的代码示例都可以被那些可以使用它们的人轻易识别;使用用户代理信息很简单,API也是如此。干得好,这个漂亮的图书馆。

http://davidwalsh.name/user-agent-parser

答案 1 :(得分:0)

这不是关于该问题的开源解决方案,而是一个解决方案。

你们知道the WURFL Module for Python吗?