Test
from flask import Flask, request, Response, render_template
from functools import wraps
import json
import requests
app = Flask(__name__)
def as_json(f):
@wraps(f)
def decorated_function(*args, **kwargs):
res = f(*args, **kwargs)
res = json.dumps(res, ensure_ascii=False).encode('utf8')
return Response(res, content_type='application/json; charset=utf-8')
return decorated_function
def Response_txt():
res = {
"version": "2.0",
"template": {
"outputs": [
{
"simpleText": {
"text": ""
}
}
],
"quickReplies": [
{
"label": "다시 검색하기",
"action": "block",
"messageText": "다시 검색할래",
"blockId": "5cb8b224e821270bd1ef83e7"
}
]
}
}
return res
def apitest(sum_name):
params = {'api_key': 'RGAPI-f880ffdf-8840-4076-8a2c-e842d0add560'}
champ_index = Champ_Index()
api_type = "lol/summoner/v4/summoners/by-name"
res = requests.get('https://kr.api.riotgames.com/%s/%s' % (api_type, sum_name), params=params)
Data = res.json()
if res.status_code == 404:
try:
if GData["status"]["status_code"] == 404:
print("존재하지 않는 소환사입니다.")
else:
print("오류로 소환사데이터를 불러오지 못했습니다.")
except:
pass
@app.route("/", methods=['POST', 'GET'])
@as_json
def parsing():
if request.method == 'POST':
sum_name = request.form['test']
#GA = json.dumps(value, ensure_ascii=False)
#print(GA)
try:
#sum_name = GA["action"]["params"]["Summoner_Name"]
print(sum_name)
RSP = apitest(sum_name)
return RSP
except:
ERS = Response_txt()
ERS["template"]["outputs"][0]["simpleText"]["text"] = "오류(응답오류)로 소환사데이터를 불러오지 못했습니다."
return ERS
elif request.method == "GET":
print("Hello")
return
if __name__ == "__main__":
app.run(host="0.0.0.0", port="5000")