我想在"User-agent"使用Python请求请求网页时发送的值。我不确定是否可以将其作为标头的一部分发送,如以下代码所示:
"User-agent"
Python
debug = {'verbose': sys.stderr} user_agent = {'User-agent': 'Mozilla/5.0'} response = requests.get(url, headers = user_agent, config=debug)
调试信息未显示请求期间发送的标头。
在标头中发送此信息是否可以接受?如果没有,我该如何发送?
user-agent应指定为在报头中的字段。
user-agent
这是HTTP标头字段的列表,你可能会对特定于请求的字段感兴趣,其中包括User-Agent。
如果你使用的是v2.13及更高版本的请求
执行所需操作的最简单方法是创建字典并直接指定标题,如下所示:
import requests url = 'SOME URL' headers = { 'User-Agent': 'My User Agent 1.0', 'From': 'youremail@domain.com' # This is another valid field } response = requests.get(url, headers=headers)
如果你使用的是v2.12.x及更高版本的请求
较旧版本的requests默认标头,因此你需要执行以下操作来保留默认标头,然后向其添加自己的标头。
requests
import requests url = 'SOME URL' # Get a copy of the default headers that requests would use headers = requests.utils.default_headers() # Update the headers with your custom ones # You don't have to worry about case-sensitivity with # the dictionary keys, because default_headers uses a custom # CaseInsensitiveDict implementation within requests' source code. headers.update( { 'User-Agent': 'My User Agent 1.0', } ) response = requests.get(url, headers=headers)