requests--请求头设置

简介: requests--请求头设置

前戏


在我们进行自动化测试的时候,很多网站都会都请求头做个校验,比如验证 User-Agent,看是不是浏览器发送的请求,如果我们不加请求头,使用脚本访问,默认User-Agent是python,这样服务器如果进行了校验,就会拒绝我们的请求。所以,在做自动化的时候,加上必要的请求头是一个好习惯。


请求头设置


使用requests库添加请求头很简单,只需要传一个headers参数就可以了

import requests
base_url = 'http://httpbin.org'
form_data = {"user": "zou", "pwd": '31500'}
form_header = {"User-Agent": "Chrome/68.0.3440.106"}  # 设置请求头,字典格式
r = requests.post(base_url + '/post', data=form_data, headers=form_header)
print(r.url)  # 打印URL
print(r.status_code)
print(r.text)

结果:

http://httpbin.org/post
200
{
  "args": {}, 
  "data": "", 
  "files": {}, 
  "form": {
    "pwd": "31500", 
    "user": "zou"
  }, 
  "headers": {
    "Accept": "*/*", 
    "Accept-Encoding": "gzip, deflate", 
    "Content-Length": "18", 
    "Content-Type": "application/x-www-form-urlencoded", 
    "Host": "httpbin.org", 
    "User-Agent": "Chrome/68.0.3440.106"
  }, 
  "json": null, 
  "origin": "112.10.81.210, 112.10.81.210", 
  "url": "https://httpbin.org/post"
}


查看请求头


前面我们已经设置好了请求头,我们可以使用r.request.headers来查看请求头

import requests
base_url = 'http://httpbin.org'
form_data = {"user": "zou", "pwd": '31500'}
form_header = {"User-Agent": "Chrome/68.0.3440.106"}
r = requests.post(base_url + '/post', data=form_data, headers=form_header)
print(r.request.headers)  # 查看请求头

结果:

{'User-Agent': 'Chrome/68.0.3440.106', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Length': '18', 'Content-Type': 'application/x-www-form-urlencoded'}


响应时间


当我们测接口的时候,我们肯定是想知道接口的响应时间,requests 提供了获取响应时间的方法

res.elapsed

获取到的数据格式如下

0:00:00.030363   # 单位为微秒

可以直接转为毫秒

res.elapsed.microseconds/1000

相关文章
|
6月前
|
缓存
HTTP 请求头Cache-Control 详解
HTTP 请求头Cache-Control 详解
385 0
|
6月前
Copy网页中F12里的请求url到postman,并且把所有参数都带过来
Copy网页中F12里的请求url到postman,并且把所有参数都带过来
108 0
|
数据库
FastAPI(53)- Response Headers 响应设置 Headers
FastAPI(53)- Response Headers 响应设置 Headers
543 0
FastAPI(53)- Response Headers 响应设置 Headers
|
14天前
|
Web App开发 JSON 缓存
GET 和 POST 请求的请求头有哪些常见字段
【10月更文挑战第27天】不同的应用场景和服务器要求可能会使用到其他一些请求头字段,这些字段在HTTP请求和响应的交互过程中起着重要的作用,帮助客户端和服务器更好地进行数据传输和处理。
|
2月前
|
JSON 数据格式
请求模块requests(二)
请求模块requests(二)
request获取请求头的名称
request获取请求头的名称
|
6月前
给requests请求添加cookie
给requests请求添加cookie
72 0
|
6月前
|
缓存 JSON 数据格式
HTTP-Header中常见的字段有哪些
HTTP-Header中常见的字段有哪些
|
缓存 Linux Apache
Requests Header | Http Header
Requests Header | Http Header
requests--Cookie设置
requests--Cookie设置