【5】基於Python-基礎知識:環境搭建和模擬Get 和Post請求(1)
阿新 • • 發佈:2020-09-03
在實戰之前,我們需要先安裝python 並且匯入request庫(pip install requests)
安裝編譯器:建議PyCharm
2. 例項操作
安裝好環境以後我們來模擬一下Get 和 Post請求
2.1 Get 和Post請求
舉例:用Python 3.0 模擬Get 和 Post請求
# -*- coding:utf8 -*- import urllib import json import requests def func_get(urlStr): """ 模擬 Get 請求 :return: 返回對應的Get資料""" # Get請求的路徑 url = urlStr + "/app/shop/farmerList" # Get請求的引數 data = {"page": "0", "limit": "10"} # 把字典的資料轉成:page=0&limit=10 data = urllib.parse.urlencode(data) # 把路徑 和 資料連線起來 request = url + '?' + data ResponseStr = requests.get(request) print(ResponseStr.text) def func_post(urlStr): """ 模擬 POST 請求 :return: 返回對應的POST 資料 """ # POST請求的路徑 url = urlStr + "/app/order/orderList" # headers請求的引數 header = {} header['content-type'] = "application/json" # 部分的請求會要求請求方式為json格式,因此需要說明 header[ 'Gkhn-Mall-Token'] = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ0aGlzIGlzIEdraG5NYWxsIHRva2VuIiwiYXVkIjoiTUlOSUFQUCIsImlzcyI6IkdraG5NYWxsIiwiZXhwIjoxNTk4MzQ2NzY1LCJ1c2VySWQiOjExMiwiaWF0IjoxNTk3NzQxOTY1fQ.tiD9msCJYxXb_HAlyXtwnnGXhOWaRDVEIbqfJO2WkjQ" # 對應使用者的token # POST請求的引數並轉成json格式 data = {"statusType": 0, "page": 0, "limit": 10} data = json.dumps( data, indent=2) # 序列化時會把json變成ASCII碼 ResponseStr = requests.post(url, data=data, headers=header ) print(ResponseStr.text) if __name__ == "__main__": urlStr = "*****" func_get(urlStr) print("------------------" ) func_post(urlStr)
注:
① 當get 和 post 是https請求時,則在請求的時候加上:verify = False
② 當使用json.dumps()序列化時會把json變成ASCII碼,因此需要使用ensure_ASCII = False
# 2. 例項操作
> 安裝好環境以後我們來模擬一下Get 和 Post請求
## 2.1 Get 和Post請求