Sentiment analysis is one of the fastest growing research areas in computer science, making it challenging to keep track of all the activities in the area. In our project we aim to achieve our goal in accurately predicting a users sentiment by analysing the data provided in any of the four different methods. They are Document Analysis, Text Analysis, Product Analysis, Movie Analysis and Audio Analysis. This project though currently in the initial stages of development, can be further applied to numerous domains which can be useful for the society. This document provides a major perspective for the users to understand and take up the project as an Open source software and add on multiple features before releasing to the market. Also, the document aids the developers in understanding the code and acts as a reference point for continuing the project.
Language: Python 3, HTML, CSS
Framework: Scrappy (Web-crawling)
Tool: Vader Analysis Tool
Web Application Framework: Django (Model-template-views architectural pattern)
Test Framework: pytest
Database: SQLite
Tools: Visual Studio Code
Syntax Checker & Sytle Checker: pylint (VSCode Python v2020.8.109390 Extension)
Code Formatter: autopep8 (VSCode Python-autopep8 v1.0.2)
Version Control: git
Automated Analysis Tool: Husky git hooks and Vulture
Husky Git hooks: Used to prevent bad commits or push
Vulture: Find dead code
https://github.com/jendrikseipp/vulture
- Run
pip install -r requirements.txtfollowed bypython -c "import nltk; nltk.download('punkt'); nltk.download('stopwords')" - Make sure you change the directory to sentimental_analysis
- Execute manage.py using the command
python3 manage.py runserverat/SE_Project1/sentimental_analaysis. This runs the Django server such that we can open the webUI for the project on the browser. - Next, open your browser and type in
localhost:8000in the search bar to open the webUI of the application. - The UI typically looks as shown below and here you have a choice between URL, file or normal text input.
- navigate to the project directory with the Dockerfile
- docker build -t my-app .
- docker run -p 5000:5000 my-app
- open browser and enter http://localhost:5000/
- Run
pip install -r requirements.txtfollowed bypython -c "import nltk; nltk.download('punkt'); nltk.download('stopwords')" - Make sure you change the directory to sentimental_analysis
- Execute manage.py using the command
python3 manage.py testat/SE_Project1/sentimental_analaysis. This runs the unit test functions in all test named files.
Homepage UI:

The UI for text input is as shown below:

The UI for Result graphs is as shown below:

Implement user authentication to store history for each user.
Recommendation system based on analysis results.
Live speech to text sentiment analysis.
Enhance the analysis by taking into consideration the number of users rated for each product!
Extend the analysis to the Facebook, Twitter and LinkedIn Posts
Avi Agrawal (aagraw24)
Ian Yeh (tyeh3)
Manvi Nagdev (mnagdev)
Pushpendra Pathak (ppathak)
Mounika Bachu (mbachu)
