GameReco / app.py
AyushAI14's picture
Upload 10 files
480c22a verified
from flask import Flask,render_template,request
import pickle
app = Flask(__name__, template_folder='templates', static_folder='static', static_url_path='/')
with open('model/homedf.pkl', 'rb') as file:
homedf = pickle.load(file)
with open('model/Maindf.pkl', 'rb') as file:
Maindf = pickle.load(file)
def genreRecommender(genre):
if genre in Maindf['genre'].values:
return Maindf[Maindf['genre'] == genre]
else:
return "no genre found"
def titleCheck(title):
if title.lower() in Maindf['title'].str.lower().values:
return True
else:
return False
# titleCheck('ENLISTeD')
def titlerecommend(title):
titleChe = titleCheck(title)
# print(titleChe)
if titleChe is True:
genre = Maindf.loc[Maindf['title'].str.lower() == title.lower(), 'genre'].values[0]
# print(f"The genre for '{title}' is: {genre}")
if genre in Maindf['genre'].values:
return Maindf[Maindf['genre'] == genre]
else:
print("No title found")
# titlerecommend('ENLISTeD')
@app.route('/')
def home():
return render_template("home.html",
title = list(homedf["title"].values),
image = list(homedf["thumbnail"].values),
short_description = list(homedf["short_description"].values),
game_url = list(homedf["game_url"].values),
genre = list(homedf["genre"].values),
platform = list(homedf["platform"].values),
publisher = list(homedf["publisher"].values),
developer = list(homedf["developer"].values),
release_date = list(homedf["release_date"].values),
freetogame_profile_url = list(homedf["freetogame_profile_url"].values),
)
@app.route("/recommend")
def recommend():
return render_template("recommend.html")
# @app.route("/UserRecommend", methods=['POST'])
# def genre():
# user_input_genre = request.form.get('UserinputGenre')
# filterdata = genreRecommender(user_input_genre)
# if filterdata.empty: # Check for an empty DataFrame
# pass
# else:
# games = filterdata.to_dict(orient="records")
# return render_template('recommend.html', games=games, user_input_genre=user_input_genre)
@app.route("/UserRecommend", methods=['POST'])
def title():
user_input_title = request.form.get('Userinputtitle')
filterTitleDataframe = titlerecommend(user_input_title)
if filterTitleDataframe.empty:
games = []
else:
games = filterTitleDataframe.to_dict(orient="records")
return render_template('recommend.html', games=games, user_input_title=user_input_title)
if __name__ == "__main__":
app.run(host='0.0.0.0', debug=True)