aboutsummaryrefslogtreecommitdiffstats
path: root/backend/app.py
blob: 5ece4c72f0178a86b4dc79c4949b6c90f1314030 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
"""
Flask app for serving the static files
"""
from flask import Flask, send_file, send_from_directory, jsonify, abort
from flask_cors import CORS
from sql.sql_handler import SQLHandler
import fileutil as fs
import datetime

app = Flask(__name__)
CONFIG = fs.load_config("config.ini")
CORS(app)


@app.route("/")
def index():
    return send_file("index.html")

@app.route("/api/subscribers")
def api_subscribers():
    server = SQLHandler(CONFIG["SQL"]["host"], CONFIG["SQL"]["user"], CONFIG["SQL"]["password"], CONFIG["SQL"]["database"])
    data = server.execute_query("SELECT * FROM subscriber_data INNER JOIN 24h_historical ON subscriber_data.channel_id = 24h_historical.channel_id ORDER BY subscriber_count DESC")
    channel_data_list = [{"channel_name":row[3], "profile_pic": row[2], "subscribers": row[4], "sub_org": row[5], "video_count": row[6], "day_diff": int(row[4] - int(row[10]))} for row in data]
    subscriber_data = {"timestamp": datetime.datetime.now(),"channel_data":channel_data_list}
    
    return jsonify(subscriber_data)
    


@app.errorhandler(404)
def not_found(error):
    return jsonify(error=str(error)), 404


if __name__ == "__main__":
    app.run(debug=True)
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage