ammar00200's picture
Upload 13 files
3aaa0a3 verified
from flask import Flask,jsonify,render_template,request
import pickle
import pandas as pd
import pandas as pd
import numpy as np
# Open the file using 'with' statement
with open('popular1.pkl', 'rb') as f:
popular_df = pd.read_pickle(f)
with open('pt1.pkl', 'rb') as fi:
pt = pd.read_pickle(fi)
with open('banquet.pkl', 'rb') as fil:
banquets = pd.read_pickle(fil)
with open('similarity_scores1.pkl', 'rb') as file:
similarity_scores = pd.read_pickle(file)
app = Flask(__name__)
@app.route('/')
def index():
return render_template(
'index.html',
banquet_img=list(popular_df['Jn12ke src'].values),
banquet_name=list(popular_df['Hall-Name'].values),
banquet_reviews=list(popular_df['num_ratings'].values),
banquet_rating=list(popular_df['Rating_x'].values),
)
@app.route('/recommend')
def recommend_ui():
return render_template(
'Recommend.html'
)
@app.route('/banquet',methods=['post'])
def recommend():
user_input=request.form.get('user-input')
if user_input not in pt.index:
return "Banquet not found in the index"
index = np.where(pt.index ==user_input)[0][0]
similar_items = sorted(enumerate(similarity_scores[index]), key=lambda x: x[1], reverse=True)[1:5]
data = []
for i in similar_items:
item = []
temp_df = banquets[banquets['Hall-Name'] == pt.index[i[0]]]
item.extend(temp_df.drop_duplicates('Hall-Name')['Hall-Name'].values)
item.extend(temp_df.drop_duplicates('Hall-Name')['Address'].values)
item.extend(temp_df.drop_duplicates('Hall-Name')['Contact'].values)
item.extend(temp_df.drop_duplicates('Hall-Name')['Rating'].values)
item.extend(temp_df.drop_duplicates('Hall-Name')['Jn12ke src'].values)
data.append(item)
print(data)
return jsonify({'recommendations': data})
if __name__=="__main__":
app.run(debug=True)