NewsMood is your go-to platform for insightful news sentiment analysis. Whether you're curious about the latest trending topic or want to delve into the emotional landscape of a specific event, we've got you covered. Simply enter a keyword, and our sophisticated sentiment analysis engine will sift through thousands of news articles, bringing you not just the information, but the emotional pulse of the story.
-
Django Web App
- Developed a web application using Django.
- Implemented views, templates, and models for data handling.
-
NewsAPI Integration
- Used NewsAPI to fetch real-time news articles based on specific queries.
- Processed JSON responses to extract relevant news data.
-
Web Scraping
- Implemented web scraping techniques to gather supplementary news content.
- Used BeautifulSoup for parsing and extraction.
-
Sentiment Analysis with RoBERTa
- Integrated a pretrained RoBERTa model for sentiment analysis.
- Applied natural language processing techniques to determine sentiment (positive, negative, neutral).
- Backend: Python, Django
- API: NewsAPI
- Web Scraping Tools: BeautifulSoup, Scrapy
- Machine Learning/NLP: RoBERTa, Hugging Face Transformers
-
Data Collection
- Utilizes NewsAPI to fetch recent news articles.
- Scrapes additional content from relevant websites for enriched dataset.
-
Data Processing
- Parses and cleans data retrieved from NewsAPI and web scraping.
- Normalizes text, removes HTML tags, and prepares data for sentiment analysis.
-
Sentiment Analysis
- Applies RoBERTa model for sentiment analysis of news articles.
- Classifies sentiment into categories such as positive, negative, or neutral.
-
Presentation
- Displays news articles along with sentiment analysis results.
- Implemented using Django web framework for a user-friendly interface.
Python and Django need to be installed
pip install -r requirements.txt
Go to sentiment_analysis folder
python manage.py runserver
NOTE - you need to create .env file and environmental variable 'NEWS_API_KEY' in the .env file. Then go to the browser and enter the url http://127.0.0.1:8000/
Users can register through register page. Then, user can login through login page.
You can access the django admin page at http://127.0.0.1:8000/admin and login with username 'admin' and password 'admin@123'.
Also a new admin user can be created using
python manage.py createsuperuser
- NewsAPI for providing access to news articles.
- OpenAI for the RoBERTa model and Transformers library.