天天看点

day20:request模块讲解和应用(三)

# ==========================
# @time:2019/11/16 16:48
# @Author:coco
# @File:lemon_03_handle_requests.py
# @software:PyCharm
# ============================

import requests

# 1.构造言请求url
url = "http://api.lemonban.com/futureloan/loans"

# 2.创建请求参数
params = {
    "pageIndex": 2,
    "pageSize": 4
}

headers = {"X-Lemonban-Media-Type": "lemonban.v2",
           "User-Agent":"Mozilla/5.0 Leo"
           }

# 3.向服务器发起请求
# a.如果给params传参,那么是以查询字符串参数的形式来传递的
# res = requests.get(url, params=params)  #返回了respone对象,相当于一个响应报文
res = requests.get(url, params=params,headers=headers)

# res.status_code,来获取响应状态码

#res.text 来获取响应报文,为字符串类

# res.json(),来获取响应报文中的json格式数据,转换python中的类型(字典或者嵌套字典中的列表)
pass

           
# ==========================
# @time:2019/11/16 17:21
# @Author:coco
# @File:lemon_04_handle_requests_post.py
# @software:PyCharm
# ============================

import requests

# 1.构造言请求url
url = "http://api.lemonban.com/futureloan/member/register"

# 2.创建请求参数
params = {
    "mobile_phone": "18229902233",
    "pwd": "12345678",
    "type": 1,
    "reg_name": "George"
}

# params = '{"mobile_phone": "18229901122","pwd": "12345678","type": 1,"reg_name": "George"}'

headers = {"X-Lemonban-Media-Type": "lemonban.v2",
           "User-Agent": "Mozilla/5.0 Leo",
           #"Content-Type": "application/json"
           }

# 3.向服务器发起请求
# a.如果以data传参,那么会以x-www-form-urllencoded的形式传递
# res = requests.post(url, data=params, headers=headers)
res = requests.post(url, params=params, headers=headers)

# b 如果以json传参,那么会以json格式的字符串形式来传递
# 会指定携带Content-Type,为applicatoin/json
# 建议:为了统一性,所有的参数,都转化为字典之后来传递
# res = requests.post(url, json=params, headers=headers)
pass

           
# ==========================
# @time:2019/11/16 17:55
# @Author:coco
# @File:lemon_05_handle_requests_recharge.py
# @software:PyCharm
# ============================
import requests

# 一、先登录
# 1.构造言请求url
login_url = "http://api.lemonban.com/futureloan/member/recharge"

# 2.创建请求参数
login_params = {
    "mobile_phone": "18811112233",
    "pwd": "12345678"
}

headers = {
    "X-Lemonban-Media-Type": "lemonban.v2",
    "User-Agent": "Mozilla/5.0 Leo"
}

# 3. 执行登录
login_res = requests.post(login_url, json=login_params, headers=headers)
json_data = login_res.json()
member_id = json_data['data']['id']
token = json_data['data']['token_info']['token']

# 二、 执行充值
# 1. 构造请求url
recharge_url = "http://api.lemonban.com/futureloan/member/recharge"

# 2. 创建请求参数
recharge_params = {
    "member_id": member_id,
    "amount": "50000"
}

headers = {
    "X-Lemonban-Media-Type": "lemonban.v2",
    "User-Agent": "Mozilla/5.0 Leo",
    "Authorization": "Bearer " + token
}

recharge_res = requests.post(recharge_url, json=recharge_params, headers=headers)
pass

#1.url、method、param(查询字符串参数、www-form、json)
#2.可以传递字典类型的参数,也支持传json字符串,支持传字典类型的字符串
one_str1='{"name":"十八男儿","age":18,"gender":true}'
one_str2='{"name":"十八男儿","age":18,"gender":true}'
# 3.封装好了之后,后续尽量不再修改(优秀的封装)

           

继续阅读