美文网首页python_爬虫
requests-session对象保存信息

requests-session对象保存信息

作者: Rainbow想喝奶茶 | 来源:发表于2021-09-07 19:07 被阅读0次

在一组测试用例中,如果对应的接口相互独立,没有什么公用信息,则用requests直接发起http请求即可。

但如果请求之间有关联,例如存在登录操作,在后续的每一步操作中均需要保持登录状态,这种情况下用requests则需要在每一步中都传入cookies等登录相关的信息来完成请求。

为了简化这部分操作,可以应用requests库中的session对象来进行请求及存储。

session

session,即会话,它可以在一次会话之中长久的保存信息,保证此次会话中的所有请求均可应用此信息。建立方式为:

s=requests.session()

在发起请求上,它与requests类似,即

s.get('https://www.***.com')
s.post('https://www.***.com',json={"name":"1"})

设置headers

目前实现了在headers中保存token的功能,下方为示例代码。

  1. 在测试用例类前,建立会话对象。
s=requests.session()
  1. 建立测试类
class Test_session():

    def test_one(self,url):
        url = 'https://www.***.com/1'
        params = {"class_id": "abc"}
        s.headers["Authorization"]="Bearer token"
        res = s.get(url=url, params=params)
        assert res.status_code == 200

    def test_two(self,url):
        url = 'https://www.***.com/2'
        params={"num":1}
        res=s.get(url=url,params=params)
        print(s.headers)
        assert res.status_code==200

在这个测试类中,test_one测试用例中请求的接口必须带有token,所以在建立的session对象的headers属性中传入token值。

然后在test_two测试用例中打印headers,会看到在test_one中传入的token值,证明在本次会话中,headers中的token始终被保存,可以应用于当前会话的所有测试用例中。

session的其它用法以及cookies的读取还需要进一步的学习,我们下次更新见~

自我记录,有错误欢迎指正~

相关文章

  • requests-session对象保存信息

    在一组测试用例中,如果对应的接口相互独立,没有什么公用信息,则用requests直接发起http请求即可。 但如果...

  • 2017/4/13 周四--打印通告函

    自定义对象用于保存通知函填写信息 实现编辑页面Controller实现获取页面保存Json,及新建对象保存。 Su...

  • ZoneDateTime vs LocalDateTime

    LocalDateTime没有包含时区信息,对象中无法保存时区信息 ZonedDateTime包含时区信息,不传的...

  • 事件对象和事件委托

    事件对象事件发生的详细信息 在ie和chrome 事件详细信息保存到内置的 event对象中Event 对象代表事...

  • Secret

    一,Secret Secret 对象类型用来保存敏感信息,例如密码、OAuth 令牌和 SSH 密钥。 将这些信息...

  • JS入门之Math对象

    Math: 数学,内置对象,在ECMAScript程序执行之前就已存在了,保存了数学公式和信息的对象 Math对象...

  • java中的序列化

    序列化主要先明白它的作用,主要作用就是将对象的信息保存下来,一定只能是对象的成员变量保存下来,而不会保存类中的静态...

  • Kubernetes学习笔记--Secret

    Secret对象类型用来保存敏感信息,例如密码、OAuth 令牌和 SSH 密钥。 将这些信息放在secret中比...

  • Alamofire-Response

    一、Response 1、Response: 信息保存者,面向对象 点击response 点击self.deleg...

  • 保存信息

    一,分类 二,可检索,可修正 三,不易丢失 四,保存工具存量大 五,重要信息不泄密 六,字体可辩认 即简书,印象笔...

网友评论

    本文标题:requests-session对象保存信息

    本文链接:https://www.haomeiwen.com/subject/gjkpwltx.html