luthrabhuvan commited on
Commit
c12e26b
·
verified ·
1 Parent(s): 872d5b0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +8 -6
app.py CHANGED
@@ -1,4 +1,5 @@
1
- from flask import Flask, render_template, request, jsonify
 
2
  import pandas as pd
3
  from sklearn.feature_extraction.text import TfidfVectorizer
4
  from sklearn.metrics.pairwise import cosine_similarity
@@ -60,7 +61,7 @@ class BookRecommender:
60
  except Exception as e:
61
  return f"An error occurred: {e}"
62
 
63
- similar_books_indices = self.similarity_matrix[book_index].argsort()[::-1][1:6] # Fixed top_n to 5
64
  recommended_books = self.df['title'].iloc[similar_books_indices].tolist()
65
  return recommended_books
66
 
@@ -81,7 +82,7 @@ recommender = BookRecommender()
81
  @app.route("/", methods=["GET", "POST"])
82
  def index():
83
  message = ""
84
- recommendations = None # Initialize recommendations
85
  if request.method == "POST":
86
  if 'file' in request.files:
87
  file = request.files['file']
@@ -104,12 +105,13 @@ def index():
104
  message = "Please upload and process a file first."
105
  else:
106
  recommendations = recommender.recommend_books(book_title)
107
- if isinstance(recommendations, str): # Check if it is an error message.
108
  message = recommendations
109
  else:
110
- message = "" # Clear any previous messages.
111
  return render_template("index.html", message=message, recommendations=recommendations)
112
 
113
 
114
  if __name__ == "__main__":
115
- app.run(debug=True)
 
 
1
+ import os
2
+ from flask import Flask, render_template, request
3
  import pandas as pd
4
  from sklearn.feature_extraction.text import TfidfVectorizer
5
  from sklearn.metrics.pairwise import cosine_similarity
 
61
  except Exception as e:
62
  return f"An error occurred: {e}"
63
 
64
+ similar_books_indices = self.similarity_matrix[book_index].argsort()[::-1][1:6]
65
  recommended_books = self.df['title'].iloc[similar_books_indices].tolist()
66
  return recommended_books
67
 
 
82
  @app.route("/", methods=["GET", "POST"])
83
  def index():
84
  message = ""
85
+ recommendations = None
86
  if request.method == "POST":
87
  if 'file' in request.files:
88
  file = request.files['file']
 
105
  message = "Please upload and process a file first."
106
  else:
107
  recommendations = recommender.recommend_books(book_title)
108
+ if isinstance(recommendations, str):
109
  message = recommendations
110
  else:
111
+ message = ""
112
  return render_template("index.html", message=message, recommendations=recommendations)
113
 
114
 
115
  if __name__ == "__main__":
116
+ port = int(os.environ.get("PORT", 5000)) # Get port from environment or default to 5000
117
+ app.run(debug=True, host='0.0.0.0', port=port) # Run on all interfaces, specified port