#coding:utf-8
import requests
import json
try:
    from urllib.parse import urlencode
except:
    from urllib import urlencode
 
session = requests.Session()
 
def serialize(params):
    if isinstance(params,dict):
        return urlencode(params)

def request_data(host,path,params,method="GET",body={}):
    try:
        method = method.upper()
        headers = {
            'Content-Type': 'application/json',            
        }
        if method=="POST":
            request_params={}
            for k,v in params.items():
                request_params[k]=v
            serialize_params= serialize(request_params)
            url="{}{}?{}".format(host,path,serialize_params)
            print('curl -X POST -H "Content-Type:application/json" "{}" -d \'{}\' '.format(url,json.dumps(body)))
            response = session.post(url,data=json.dumps(body),headers=headers)
        else:
            request_params = {}
            for k,v in params.items():
                request_params[k]=v
            serialize_params= serialize(request_params)
            url="{}{}?{}".format(host,path,serialize_params) 
            print('curl -X GET "{}"'.format(url))
            response = session.get(url,headers=headers)
        if response.status_code == 200:
            res = json.loads(response.text)
            return res
        return []
    except Exception as e:
        print(e)
        return []
if __name__ == "__main__":
    host="www.baidu.com"
    path="/s"
    params={
    "q":"test"
    }
    request_data(path)
    

  

 posted on 2023-05-12 11:31  boye169  阅读(10)  评论(0编辑  收藏  举报