A web application for analyzing movie reviews and sentiment from Letterboxd. This tool allows users to scrape reviews, analyze sentiment, and visualize trends in movie reception over time.
- Review Scraping: Scrape up to 500 reviews (5000 with admin privileges) from any movie on Letterboxd
- Sentiment Analysis: Analyze the emotional tone of reviews using NLTK
- Data Visualization: Interactive charts and graphs showing:
- Rating distributions
- Sentiment trends over time
- Overall movie statistics
- User engagement patterns
- Real-time Processing: All analyses are performed in real-time
- Movie Information: Display comprehensive movie details including director, release date, and average rating
- Frontend: Streamlit
- Database: MongoDB Atlas
- Data Processing:
- Data Visualization:
- Clone the repository:
git clone https://github.com/juanjuanjuanfer/yet_to_be_named.git
cd yet_to_be_named
- Create a virtual environment and activate it:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Set up environment variables:
- Create a
.streamlit/secrets.toml
file with your MongoDB connection string:
- Create a
MONGODB_URI = "your_mongodb_connection_string"
- Run the application:
streamlit run Home.py
lbxd/
├── Home.py # Main Streamlit application
├── pages/ # Additional pages
│ ├── Scraper.py # Movie review scraping page
│ └── Dashboard.py # Analytics dashboard
├── utils.py # Utility functions
├── connection_mongo.py # Database operations
├── film.py # Film scrpaer
├── user.py # User scraper
└── requirements.txt # Project dependencies
- Home Page: Introduction to the application and its features
- Scraper Page:
- Enter a Letterboxd movie URL or title
- Select number of reviews to scrape
- View scraping progress in real-time
- Dashboard Page:
- Select a movie from the database
- View various analytics and visualizations
- Filter data by date range
- Analyze sentiment distribution
- PyBoxd - Python package for Letterboxd scraping
- Alexis Canto Ancona (2009020@upy.edu.mx)
- Samantha Castro Echeverria (2109028@upy.edu.mx)
- Christopher Cumi Llanes (2109048@upy.edu.mx)
- Juan Fernandez Cruz (2109061@upy.edu.mx)
- Juliana Ramayo Cardoso (2109128@upy.edu.mx)
This project is licensed under the MIT License - see the LICENSE file for details.
- Letterboxd for providing a platform that inspired this project
- Universidad Politécnica de Yucatán for supporting this academic project
- All contributors and users who have helped improve this tool
This project is not officially affiliated with Letterboxd. It is an academic project created for educational purposes. Please be mindful of Letterboxd's terms of service when using this tool.