python requestsモジュールインタフェース呼び出し

4621 ワード

テキストリンク:https://blog.csdn.net/qq_24373725/article/details/78467065
httpプロトコルに基づいて,GETとPOSTの2つの方法が最も一般的である.
インタフェースドキュメントには、次の情報が必要です.
インタフェース名インタフェース機能インタフェースアドレスサポートフォーマットjson/xml要求方式要求サンプル要求パラメータ(必須かどうか、データ型、伝達パラメータフォーマット)戻りパラメータ説明典型的な(1つまたは2つ)パラメータを用いて要求が通過したかどうかを判断する(応答の情報判断に重点を置く)
  • GET
  • import requests
    import json
    
    url = "http://v.juhe.cn/laohuangli/d"
    para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}
    header ={}
    
    r = requests.get(url,params=para,headers= header)
    
    print('get         json  ',r.text)
    print("get         ",r.status_code)
    print("get       ",r.headers['Content-Type'])
    
    #   json       python       
    json_r = r.json()
    print(json_r)
  • POST postリクエストには2つのリクエストフォーマットがあります:1、key-valueのフォーマット'Content-Type':'application/x-www-form-urlencoded'2、標準jsonのフォーマット:'Content-Type':'application/json'#key-value
    import requests
    import json
    
    url = "http://v.juhe.cn/laohuangli/d"
    para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}
    header ={}
    
    r = requests.post(url,data=para,headers= header)
    
    print('get         json  ',r.text)
    print("get         ",r.status_code)
    print("get       ",r.headers['Content-Type'])
    
    #   json       python       
    json_r = r.json()
    print(json_r)
    #json
    import requests
    import json
    
    url = "http://v.juhe.cn/laohuangli/d"
    para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}
    header ={}
    #python       json  (json.dumps())
    para = json.dumps(para)
    r = requests.post(url,data=para,headers= header)
    
    print('get         json  ',r.text)
    print("get         ",r.status_code)
    print("get       ",r.headers['Content-Type'])
    
    #   json       python       
    json_r = r.json()
    print(json_r)
    三、すべてのリクエストを関数にカプセル化する
    def get(url,para,headers):
        try:
            r = requests.get(url,params=para,headers=headers)
            print("        ",r.status_code)
            json_r = r.json()
            print("json     python    ",json_r)
        except BaseException as e:
            print("    !",str(e))
    def post(url,para,headers):
        try:
            r = requests.post(url,data=para,headers=headers)
            print("        ",r.status_code)
            json_r = r.json()
            print("json     python    ",json_r)
        except BaseException as e:
            print("    !",str(e))
    def post_json(url,para,headers):
        try:
            data = para
            data = json.dumps(data)   #python       json    
            r = requests.post(url,data=data,headers=headers)
            print("        ",r.status_code)
            json_r = r.json()
            print("json   python    :",json_r)
        except BaseException as e:
            print("    !",str(e))
    
    url = "http://v.juhe.cn/laohuangli/d"
    para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}
    headers ={}
    
    get(url,para,headers)
    post(url,para,headers)
    post_json(url,para,headers)
    四、すべてのリクエストを1つのオブジェクトにカプセル化する
    class Webrequests:
        def get(self,url,para,headers):
            try:
                r = requests.get(url,params=para,headers=headers)
                print("        ",r.status_code)
                json_r = r.json()
                print("json     python    ",json_r)
            except BaseException as e:
                print("    !",str(e))
        def post(self,url,para,headers):
            try:
                r = requests.post(url,data=para,headers=headers)
                print("        ",r.status_code)
                json_r = r.json()
                print("json     python    ",json_r)
            except BaseException as e:
                print("    !",str(e))
        def post_json(self,url,para,headers):
            try:
                data = para
                data = json.dumps(data)   #python       json    
                r = requests.post(url,data=data,headers=headers)
                print("        ",r.status_code)
                json_r = r.json()
                print("json     python    ",json_r)
            except BaseException as e:
                print("    !",str(e))
    
    url = "http://v.juhe.cn/laohuangli/d"
    para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}
    headers ={}
    
    q = Webrequests()
    
    q.get(url,para,headers)
    q.post(url,para,headers)
    q.post_json(url,para,headers)