NLP · Python · Web Scraping · Recommender Systems

Système de recommandation de films — scraping et filtrage collaboratif

Système de recommandation de films construit en Python — scraping IMDB avec Selenium, moteur de recherche par similarité TF-IDF, et système de filtrage collaboratif basé sur les préférences d'utilisateurs similaires, avec interface graphique Tkinter.

Python Selenium BeautifulSoup Scikit-learn TF-IDF Pandas Tkinter
Voir sur GitHub Retour aux projets
Movie recommendation system

Contexte & Problème

Les plateformes de streaming comme Netflix ou Prime Video utilisent des systèmes de recommandation sophistiqués pour suggérer des contenus adaptés à chaque utilisateur. Ces systèmes combinent généralement deux approches : le filtrage basé sur le contenu (similarité entre films) et le filtrage collaboratif (préférences d'utilisateurs similaires).

L'objectif de ce projet : construire de zéro un système de recommandation de films en deux parties — un moteur de recherche par similarité textuelle via TF-IDF, et un système de filtrage collaboratif basé sur les notes et préférences d'utilisateurs similaires, le tout avec une interface desktop Tkinter.


Approche méthodologique

1

Web scraping IMDB

Collecte automatisée des données de films depuis IMDB avec Selenium (navigation dynamique) et BeautifulSoup (parsing HTML) — titres, genres, descriptions, notes, acteurs.

2

Construction de la matrice TF-IDF

Vectorisation des descriptions et métadonnées des films via TF-IDF (Term Frequency-Inverse Document Frequency) pour mesurer la similarité textuelle entre films.

3

Moteur de recherche par similarité

Calcul de la similarité cosinus entre le film recherché et tous les films de la base — retourne les N films les plus similaires.

4

Filtrage collaboratif

Identification des utilisateurs ayant des préférences similaires via un score combiné (MRS/MRA) — recommande les films bien notés par des utilisateurs proches du profil cible.

5

Interface Tkinter

Interface graphique desktop permettant de saisir un titre, visualiser les recommandations et naviguer entre les deux modes (recherche par similarité / filtrage collaboratif).


Résultats clés

2
Approches combinées (TF-IDF + Filtrage collaboratif)
2
Sources de données (IMDB films + ratings utilisateurs)
3
Composants du système (Scraping + Moteur + Interface)
100%
Système construit from scratch

Ce que j'ai appris


Limitations & Améliorations possibles