Skip to content

A movie recommendation system based on collaborative learning

Notifications You must be signed in to change notification settings

asmitks/GETFLIX

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

layout title subtitle gh-repo gh-badge tags comments
post
GETFLIC
Not Netflix... a movie recommendation system
asmitks/GETFLIX
star
fork
follow
test
true

GETFLIX

This is a 🎥 movie recommendation system based on collaborative learning (user-user and item-item) which was applied on the IMDB database.The recommendation system asks for ratings on 4 or more movies out of approx. 500 movies and returns 4 recommendations each for User-User and Item-Item collaborative learning algorithms. alt text

Tools Used

  • Python 3.5
  • Mongo DB
  • Docker
  • Heroku
  • mlab
  • PyMongo
  • Flask
  • HTML/CSS
  • Pandas
  • Beautiful soup

Sources Referred

  • Collective Intelligence by Toby Segaran

How to Use?

You can find the hosted app here GETFLIX

How to use the app?

At the above link you will see a page with approx. 500 movies.You need to rate any 4(k) or more movies and press submit at the bottom of the page to get your recommendations

you can rate the movies by moving the slider thumb to 5 possible positions from (1 to 5) initially all sliders are at 0th position

alt text

You will be presented 4 recommendations each of user-user and item-item collaborative learning.

It is possible that user-user algo doesn't return 4 movies due to its dependency on the data of user ratings.

Explanation

for explanation behind the algos and a brief report refer to Report.pdf

Code Details

Brief description of folder/files in the repo.

app.py

The main python3 flask file that contains the main algorithms and logic

how to run

python3 app.py 

templates

score.html

Main template that is returned as the home page

recommend.html

Template that is returned when both algos return answers

recommend1.html

Template is returned when user-user algo does not return answer.

static

contains the css file style.css

Other

It contains all raw data taken from movie lense.

mongs.py

Used for creating mongo db database after data cleaning

python3 other/mongs.py

scrape.py

Used for scraping thumbnails from dedicated sites of imdb

python3 other/scrape.py

change.py

Used for printing required tags that need to be inserted into HTML file.

bash python3 other/change.py

Dockerfile

Used to run using docker commands to run using docker To run the dockerfile:

docker build -t flask-getflix:latest .

To run the app:

 docker run flask-getflix

How to access mongoDB collections using mongolab.

The mongoDB collections that I used can be accessed thorough

imdb database

MONGODB_URI='mongodb://asmit:[email protected]:43062/imdb'

data_imdb

MONGODB_URI='mongodb://asmit:[email protected]:27825/data_imdb'

About

A movie recommendation system based on collaborative learning

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published