forked from Kelder/ceneka-bot-battle
38 lines
841 B
Python
38 lines
841 B
Python
|
import requests
|
||
|
from flask import Flask, jsonify, render_template
|
||
|
|
||
|
users = {"local_klink": "Francis"}
|
||
|
|
||
|
|
||
|
def get_data():
|
||
|
res = requests.get("https://botbattle.be/api/leaderboard")
|
||
|
return res.json()
|
||
|
|
||
|
|
||
|
def filter_date(data):
|
||
|
data = sorted(data, key=lambda x: x["elo"], reverse=True)
|
||
|
filtered = list(filter(lambda x: x["username"] in users.keys(), data))
|
||
|
[dict.update(item, position=index + 1, name=users[item["username"]]) for index, item in enumerate(filtered)]
|
||
|
return filtered
|
||
|
|
||
|
|
||
|
app = Flask(__name__)
|
||
|
|
||
|
|
||
|
@app.route("/")
|
||
|
def index():
|
||
|
data = get_data()
|
||
|
filtered = filter_date(data)
|
||
|
return render_template("index.html", data=filtered)
|
||
|
|
||
|
|
||
|
@app.route("/leaderboard")
|
||
|
def leaderboard():
|
||
|
data = get_data()
|
||
|
filtered = filter_date(data)
|
||
|
return jsonify(filtered)
|
||
|
|
||
|
|
||
|
if __name__ == "__main__":
|
||
|
app.run()
|