Http头用户代理

2024-09-27 18:19:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从HTTP头中的用户代理字符串中获取浏览器列表。在许多字符串中,浏览器信息是字符串中的第二个条目,如下所示:

(compatible;.MSIE.8.0;.Windows.NT.5.1;.Trident/4.0)

但在某些字符串中,要么没有浏览器信息,要么该信息作为第三个条目出现,如下所示:

^{pr2}$

如何处理?Python中有什么东西可以处理HTTP头字段吗?非常感谢。在


Tags: 字符串用户信息http代理列表windows浏览器
1条回答
网友
1楼 · 发布于 2024-09-27 18:19:12

我以前用PHP编写了一个用户代理分析器,所以它可能有点过时,但希望它能有所帮助。我提取了浏览器信息、操作系统和语言,但我只在这里包含浏览器信息。在

所有主要的浏览器名称都包含在UA字符串中,但是Mozilla几乎都在UA字符串中,对于Firefox,使用Firefox字符串。因此,创建一个包含以下内容的数组:

browserList = {'Opera': 'Opera', 
    'Internet Explorer': 'MSIE',
    'Firefox': 'Firefox',
    'Chrome': 'Chrome',
    'Not specified' => ''}

然后试着在UA字符串上匹配这些。如果不想扩展统计数据,可以添加更多浏览器。至于版本号,在大多数情况下,它出现在浏览器名称之后。因此,请尝试在找到浏览器名称的索引后提取第一个数字点编号。在

你的访问者可能是一个爬虫(一个机器人,像谷歌的),你可以通过匹配以下列表来找到:

^{pr2}$

希望这有帮助。在

相关问题 更多 >

    热门问题