繁体   English   中英

如何在 Python 中访问 User-Agent 以获取我的浏览器详细信息,我尝试的每种方法都返回 Python-usrlib 2.7

[英]How to access User-Agent in Python to get my browser details , every method i try returns Python-usrlib 2.7

我想通过发送请求来访问 python 中的浏览器名称和版本。这是理想的方法还是有其他方法? 因为所有提供用户代理的方法都将 PythonUserlib2.7 作为用户代理,所以我想要我的实际用户代理。

我假设您熟悉 HTTP 请求及其结构,如果不熟悉, 这里有一个指向 HTTP/1.1 请求的 RFC 文档的链接,在页面底部,有一个指向标头字段的链接列表。

用户代理是在HTTP请求头字段标识entity发送请求,由entity我的意思是你用来发送请求,这是你的机器上托管的程序。 诸如浏览器类型、版本和操作系统之类的信息在用户代理字段中发送。

因此,当您使用 urllib.request 发送请求时,urllib 会使用提供给它的值填充 HTTP 请求标头,否则将使用默认值。 这就是您将PythonUserLib2.7作为用户代理的原因。

如果您需要特定浏览器的用户代理,则需要使用该浏览器发送请求,您可以使用浏览器自动化工具(如selenium webdriver在 python 中执行此操作。 您可以使用它来启动浏览器实例并访问网站。

我只使用过selenium webdriver ,它没有能力检查发送/接收的数据包/请求,换句话说,你不能直接从selenium获取 HTTP 请求/响应。 作为一种变通方法,您可以使用selenium (或任何其他自动化工具)来启动您的浏览器,然后访问一个可以为您提供用户代理的网站,甚至可以对其进行解析。

这是selenium 文档的链接,它解释了如何开始使用 selenium 以及如何下载所需的包。

如果您在 google 上搜索user-agent onlineGoogle 会告诉您您的用户代理是什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM