天天看點

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.封裝好了之後,後續盡量不再修改(優秀的封裝)

           

繼續閱讀