Python处理F12里的表单格式的headers数据为Requests 字典请求头小技巧

目录

1、原由

2、分析

3、代码实现


1、原由

       在做接口测试时,在浏览器F12开发者工具里看到request headers,如下图

 

copy出来的header数据是是一个表单格式的数据,复制出来属于字段串,不是json格式,

Python的requests 方法使用的headers参数,是Python的Json格式,也就是字典(dict)格式,

为什么要写这个文章呢,因为我们做自动化框架时,为了方便使用,会用excel录入接口的url,header与body

这里header为了简单便支持在F12里直接复制出来那也表单格式的数据,如下图

2、分析

编写一段读取excel的代码,使用openpyxl来写,这里留给大家去研究,然后通过dubug发现,通过openpyxl取出headers的格式是这样的 

'Access-Control-Allow-Credentials: true\nAccess-Control-Allow-Origin: http://test-hcz-static.pingan.com.cn\naccessToken: 8b1f056249134c4f9fb7b573b25ce08c'

每一项之间是以\n换行符分割,而每项的键与值之前以:冒号分割。

所以先通过换行符 \n  拆分请求头的各项,再将各项以冒号分割key与value,最后将key,value存放在字典中,

这个字典就是requests请求所需要的headers了。

3、代码实现

具体代码如下:

def format_headers(param):
    """
    格式化请求头
    :param param:excel里读出出来的header,是从浏览器f12里直接copy的
    :return:headers
    """
    if param is None:
        return False, 'Headers为空'
    list_header = param.split('\n')
    headers = {}

    for li in list_header:
        buff = li.split(':')
        try:
            headers[buff[0]] = buff[1]
        except IndexError:
            return False, 'Headers格式不对'
    return True, headers

然后使用这一段代码调试上面的代码

header = 'Access-Control-Allow-Credentials: true\nAccess-Control-Allow-Origin: http://test-hcz-static.pingan.com.cn\naccessToken: 8b1f056249134c4f9fb7b573b25ce08c'
_isOK, headers = format_headers(header)
print(headers, type(headers))

查看调试结果

 

接口自动化请求头格式化小技巧分享完毕,

        希望来个一键三连哦

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

魂尾ac

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值