requests

Day73 requests第三方库在测试中的使用

requests库介绍、使用requests发送get请求、使用requests发送post请求等

09-30侠课岛    基础入门       

后端/后端/Python 由浅入深入门 10     0     267

总结

1.文档链接

2.使用requests发送get请求

  • 使用requests发送get请求首先需安装requests模块,然后导入;

  • 然后可以使用例如:r = requests.get('[https://www.baidu.com')](https://www.baidu.com')),方法获取某个网页,r表示一个 Response 对象,我们从这个对象中获取所有我们想要的信息;

3.如何传递url参数

  • 如果我们想要手动构建URl,可以使用params关键字来传参,如:r = requests.get('[https://www.baidu.com',](https://www.baidu.com',) params={'id': 'abc'}),我们打印print(r.url)可以得到https://www.baidu.com/?id=abc;

  • 所以我们可以知道如果是手工构建 URL,那么数据会以键/值对的形式置于 URL 中,跟在一个问号的后面;

4.resquest中常用的Response响应信息

  • r.text:返回响应对象,Unicode型数据,主要取文本;

  • r.content:返回响应对象,bytes型,二进制数据,主要取图片和文件等,中文显示为字符;

  • r.url:获取当前请求的url;

  • r.json():Requests中内置的JSON解码器;

  • r.encoding:编码方式;

  • r.status_code:状态响应码;

  • r.headers:响应头;

  • r.cookies:返回cookie;

5.使用requests发送post请求

  • POST请求方式的编码方式,也就是Content-Type的类型一般有3种,分别是:

  • application/x-www-form-urlencoded:以form表单形式提交数据,使用的时候只需要将请求的参数构造成一个字典,然后传给requests.post()的data参数即可;

  • application/json:以json格式提交数据,主要是用于发送ajax请求中,动态加载数据;

  • multipart/form-data:一般用于上传文件,使用时需要将文件传给requests.post()的files参数;

6.超时

  • 为了防止服务器响应缓慢,导致客户端处理异常,requests请求大多设置 timeout 参数,例如:requests.get('http://baidu.com', timeout=10),如果需要让 request 永远等待,则传入一个 None 作为 timeout 的值;

7.Cookie

  • Cookie 的返回对象为 RequestsCookieJar,它的行为和字典类似,但接口更为完整,适合跨域名跨路径使用,可以把 Cookie Jar 传到 Requests 中来请求登录页面,例如:r = requests.get('[https://www.baidu.com/',](https://www.baidu.com/',) cookies=jar)

本教程图文或视频等内容版权归侠课岛所有,任何机构、媒体、网站或个人未经本网协议授权不得转载、转贴或以其他方式复制发布或发表。

评价

10

本课评分:
  •     非常好
难易程度:
  •     适中的

内容目录



|
教程
粉丝
主页

签到有礼

已签到2天,连续签到7天即可领取7天全站VIP

  • 1
    +2 金币
  • 2
    +3 金币
  • 3
    +5 金币
  • 6
    +7 金币
  • 5
    +6 金币
  • 4
    暖心福利
    自选分类VIP ×1天
  • 7
    惊喜大礼

    自选分类VIP ×3天 +20金币
  • 持续签到 +8 金币

金币可以用来做什么?