FocusTube / app.py
naveenus's picture
Update app.py
e132138 verified
from flask import Flask, request, jsonify, send_from_directory
from youtube_scraper import get_youtube_info
from score_model import score_fit
app = Flask(__name__, static_folder='.', static_url_path='')
@app.route('/')
def index():
return send_from_directory('.', 'index.html')
# New endpoint: fetch only metadata once
@app.route('/api/meta', methods=['POST'])
def api_meta():
data = request.get_json(force=True)
url = data['url']
info = get_youtube_info(url)
# Return just title & description
return jsonify({
"title": info["title"],
"description": info["description"]
})
# Score endpoint now expects already-fetched title+description
@app.route('/api/score', methods=['POST'])
def api_score():
data = request.get_json(force=True)
title = data['title']
description = data['description']
goal = data.get('goal','')
combined = f"{title} {description}"
scores = score_fit(combined, goal, method='raw')
return jsonify({"scores": scores})
if __name__ == '__main__':
app.run(debug=True)