rating page
This commit is contained in:
parent
66973cc71e
commit
55be74a642
17
api.py
17
api.py
@ -1,3 +1,5 @@
|
||||
from collections import defaultdict
|
||||
|
||||
from flask import Flask
|
||||
|
||||
from mongo import mongo
|
||||
@ -14,3 +16,18 @@ def stats_json():
|
||||
"Всего чатов": mongo.chats_collection.count_documents({"chat_id": {"$lt": 0}}),
|
||||
"Отвечено": replies
|
||||
}
|
||||
|
||||
|
||||
@app.route('/rating', methods=['GET'])
|
||||
def main():
|
||||
rating = defaultdict(int)
|
||||
for doc in mongo.counter_collection.find({}):
|
||||
rating[doc["username"]] += doc['count']
|
||||
rating_list = []
|
||||
for user, count in rating.items():
|
||||
rating_list.append({'username': user, 'count': count})
|
||||
page = '<html><body><h1>Рейтинг пользователей</h1><br><ul>'
|
||||
for item in sorted(rating_list, key=lambda x: x['count'], reverse=True):
|
||||
page += f'<li><a href="https://t.me/{item["username"]}">{item["username"]}</a> - {item["count"]}</li>'
|
||||
page += '</ul></body></html>'
|
||||
return page
|
||||
|
Loading…
Reference in New Issue
Block a user