2024-09-27 18:19:12 发布
网友
我试图从HTTP头中的用户代理字符串中获取浏览器列表。在许多字符串中,浏览器信息是字符串中的第二个条目,如下所示:
(compatible;.MSIE.8.0;.Windows.NT.5.1;.Trident/4.0)
但在某些字符串中,要么没有浏览器信息,要么该信息作为第三个条目出现,如下所示:
如何处理?Python中有什么东西可以处理HTTP头字段吗?非常感谢。在
我以前用PHP编写了一个用户代理分析器,所以它可能有点过时,但希望它能有所帮助。我提取了浏览器信息、操作系统和语言,但我只在这里包含浏览器信息。在
所有主要的浏览器名称都包含在UA字符串中,但是Mozilla几乎都在UA字符串中,对于Firefox,使用Firefox字符串。因此,创建一个包含以下内容的数组:
browserList = {'Opera': 'Opera', 'Internet Explorer': 'MSIE', 'Firefox': 'Firefox', 'Chrome': 'Chrome', 'Not specified' => ''}
然后试着在UA字符串上匹配这些。如果不想扩展统计数据,可以添加更多浏览器。至于版本号,在大多数情况下,它出现在浏览器名称之后。因此,请尝试在找到浏览器名称的索引后提取第一个数字点编号。在
你的访问者可能是一个爬虫(一个机器人,像谷歌的),你可以通过匹配以下列表来找到:
希望这有帮助。在
我以前用PHP编写了一个用户代理分析器,所以它可能有点过时,但希望它能有所帮助。我提取了浏览器信息、操作系统和语言,但我只在这里包含浏览器信息。在
所有主要的浏览器名称都包含在UA字符串中,但是Mozilla几乎都在UA字符串中,对于Firefox,使用Firefox字符串。因此,创建一个包含以下内容的数组:
然后试着在UA字符串上匹配这些。如果不想扩展统计数据,可以添加更多浏览器。至于版本号,在大多数情况下,它出现在浏览器名称之后。因此,请尝试在找到浏览器名称的索引后提取第一个数字点编号。在
你的访问者可能是一个爬虫(一个机器人,像谷歌的),你可以通过匹配以下列表来找到:
^{pr2}$希望这有帮助。在
相关问题 更多 >
编程相关推荐