Team Ai
Apppublic

CodeFella/Movie-Recommendation-System

sourceHugging Faceupdated 4y agoView on Hugging Face
0likes
app.py44 linesDownload Raw Back to root
1 2import pandas as pd3import streamlit as st4import pickle5import requests6 7movie_dict = pickle.load(open('movie_dict.pkl','rb'))8movies = pd.DataFrame(movie_dict)9similarity = pickle.load(open('similarity.pkl','rb'))10 11def fetch_poster(movie_id):12    response = requests.get('https://api.themoviedb.org/3/movie/{}?api_key=be43e0f2de82f79f518e3564bb084af9&language=en-US'.format(movie_id))13    data= response.json()14    # st.text(data)15    return "https://image.tmdb.org/t/p/original" + data['poster_path']16 17 18def recommend(movie):19    movie_index = movies[movies['title'] == movie].index[0]20    distances = similarity[movie_index]21    movies_list = sorted(list(enumerate(distances)), reverse=True, key=lambda x: x[1])[1:6]22 23    recommended_movies = []24    recommended_movie_posters = []25    for i in movies_list:26        movie_id = movies.iloc[i[0]].movie_id27        recommended_movies.append(movies.iloc[i[0]].title)28        recommended_movie_posters.append(fetch_poster(movie_id))29    return recommended_movies,recommended_movie_posters30 31st.title("Movie Recommender System")32 33selected_movie_name = st.selectbox(34'Select you favourite movie',35(movies['title'].values))36 37if st.button('Recommend'):38    names, posters = recommend(selected_movie_name)39    cols = st.columns(5)40    for i in range(5):41        with cols[i]:42            st.text(names[i])43            st.image(posters[i])44