前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python-接口自动化(七)

Python-接口自动化(七)

作者头像
py3study
发布2020-01-16 16:22:19
3660
发布2020-01-16 16:22:19
举报
文章被收录于专栏:python3python3

requests模块(七)

(八)requests模块

1、requests是用python语言编写,属于第三方库,基于urllib,采用Apache2 Licensed开源协议的HTTP库,它比urllib更加方便,可以节约我们大量的工作,完全满足HTTP测试需求,总结成一句话就是:requests是用python实现的简单好用的http库。

2、安装(以我自己的电脑安装为例,也可自行百度进行安装)

我的电脑是Mac,版本是python3,之前在电脑上安装过homebrew,因为python3安装之后就会自动安装pip3,所以安装requests就可以直接在终端上输入:pip3 install requests,回车之后等安装完毕就可以了。

3、运用

 例如:

代码语言:javascript
复制
 1 import requests
 2 
 3 # get请求
 4 url = 'http://www.baidu.com'
 5 res = requests.get (url)  # 返回一个消息实体(响应头 响应状态码 响应报文)
 6 print (res)
 7 
 8 print ("响应头", res.headers)
 9 
10 print ("响应状态码", res.status_code)
11 
12 print ("响应报文", res.text)
代码语言:javascript
复制
 1 import requests
 2 
 3 # post请求
 4 url = 'https://www.baidu.com/login'
 5 data = {"mobilephone": "18784844884", "pwd": "123456"}
 6 res = requests.post (url, data)
 7 print (res)
 8 print ("响应头", res.headers)
 9 
10 print ("响应状态码", res.status_code)
11 
12 print ("响应报文", res.text)

一般返回的报文内容是html、xml、json格式的话可以用text来获取返回的内容,只有json格式的返回值才会支持json(推荐使用json,方便取值),html、xml格式的如果用json来获取返回的内容会报错。

再例如:

?可以用任意网站写代码进行测试或验证,下面这是最基本的利用requests来发起post和get请求。

代码语言:javascript
复制
 1 import requests
 2 
 3 
 4 class HttpRequest:
 5     '''利用requests封装get请求和post请求'''
 6 
 7     def http_request(self,url,data,method,cookie=None):
 8         '''URL:请求的地址
 9         param:传递的参数
10         cookie:请求的时候传递的cookie值
11         method:请求的时候支持get和post 字符串形式的参数'''
12         if method.lower()=='get':
13             res = requests.post (url, data,cookies=cookie)#响应结果的消息实体
14         else:
15             res=requests.get(url,data,cookies=cookie)#响应结果的消息实体
16         return res #返回一个消息实体
17 
18 
19 if __name__ == '__main__':
20     url = 'http://xx.xx.xxx/login'
21     data = {"mobilephone": "test", "pwd": "test"}
22     res=HttpRequest ().http_request (url,data,'post')
23     print("登录结果是",res.json())
24 
25     # 充值
26     recharge_url='http://xx.xx.xxx/recharge'
27     recharge_data={"mobilephone":"test","amount":"1000"}
28     recharge_res=HttpRequest().http_request(recharge_url,recharge_data,'get',res.cookies)
29     print("充值的结果是",recharge_res.json())

 以上,第七部分到此结束~

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • requests模块(七)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档