#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)