parsingHTTP用户代理string
在Python中parsingUser-Agentstring以便可靠检测的最佳方法是什么?
- 浏览器
- 浏览器版本
- OS
或者可能是任何帮助程序库
回答我自己的问题;)
最后,我决定去build议#1即写自己的。 我对结果感到高兴。 请随意使用/修改/发送我补丁等
Hicro Kee的Python的UASparser。 通过版本检查从远程服务器自动更新数据文件和caching。
Werkzeug具有内置的用户代理parsingfunction。
http://werkzeug.pocoo.org/docs/0.10/utils/#module-werkzeug.useragents
在针对Firefox用户代理的完整语料库运行这些build议后,我发现用于比较的版本号parsing相当糟糕。
如果这是你所需要的,我build议你看一下UAparser ,它曾经是浏览器项目的一部分。 文档在这里。
对这个问题的其他回答现在已经很老了。 我相信浏览器用户代理parsing中的新标准是浏览器的用户代理parsing器 。
- UAparsing器pypi包
- UA在github上的parsing器
在许多其他语言中也可以方便地使用完全相同的匹配模式 。 有一天你可能也想在JavaScript中parsing一些UAstring,你不需要担心不一致的parsing。
浏览器Cap分析器应该工作。 虽然可能有点慢
但是,如果您想在Python端parsing所有这些,可以使用http://browsers.garykeith.com/downloads.asp上提供的XML / INI文件在用户代理上进行查找。 这是在php的get_browser()函数中使用的文件。