Skip to content

eisenerz108/project-python-ml-recommender-system-movie

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Static Badge Static Badge

Movie Recommender System

Overview

This is a Movie Recommender System built using Streamlit for the frontend and Google Colab for data preprocessing. The system suggests movies based on a selected title and displays movie posters using The Movie Database (TMDb) API.

Features

  • Recommends 5 similar movies based on the selected movie.
  • Fetches and displays movie posters using TMDb API.
  • Uses precomputed similarity scores for recommendations.
  • Simple and interactive Streamlit UI.

Tech Stack

  • Python (Main programming language)
  • Pandas (Data handling)
  • Scikit-learn (Similarity computations)
  • Pickle (Storing precomputed data)
  • Streamlit (Web UI)
  • Google Colab (Data preprocessing)
  • Requests (Fetching data from TMDb API)

Installation

1. Clone the Repository

git clone https://github.com/your-username/movie-recommender.git
cd movie-recommender

2. Install Dependencies

pip install streamlit pandas requests scikit-learn

3. Download Required Files

  • Ensure movie_dict.pkl and similarity.pkl are present in the project directory. These files contain movie data and precomputed similarity scores.

4. Run the Streamlit App

streamlit run app.py

How It Works

1. Data Preprocessing (Google Colab)

  • Movie data is processed and stored in movie_dict.pkl.
  • Similarity scores between movies are computed and saved in similarity.pkl.
  • Preprocessed files are downloaded and used in the Streamlit app.

2. Movie Recommendation Logic

  • Uses cosine similarity on movie metadata to find similar movies.
  • The top 5 most similar movies are recommended.

3. Fetching Movie Posters

  • The fetch_poster(movie_id) function retrieves movie posters using the TMDb API.
  • Posters are displayed along with movie names in the Streamlit UI.

4. Feel of the WebApp

image

Usage

  1. Select a movie from the dropdown.
  2. Click 'Give recommendations'.
  3. View the recommended movies and posters.

Future Improvements

  • Add hybrid filtering (content + collaborative recommendations).
  • Implement user-based recommendations.
  • Improve UI design and make it more interactive.

License

This project is open-source and available under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published