【3-1】基于Python-基础知识:环境搭建和模拟Get 和Post请求(1)

1. 环境搭建

  • 在实战之前,我们需要先安装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

 

posted @ 2020-09-03 16:04  Yulisa  阅读(257)  评论(0)    收藏  举报
321312321321