Twitter sentiment analyzer developed as a part of my Master Thesis in 2017/2018.
Main functionality is:
- Download specified number of tweets in a specified time window. Language can be specified. Geodata are not implemented (yet).
- Execute sentiment analysis on downloaded tweets. Classifier was pre-trained on Sentiment140 dataset
- Create linegraph, heatmap and various wordclouds(common words, unique words, shaped wordcloud)
- Generate Steemit blog post using template defined in reports folder.
Following modules need to be installed:
- apt-get install python-tk
- pip install XlsxWriter
- apt install python-numpy
- apt-get install python-matplotlib
- pip install tweepy
- pip install -U scikit-learn scipy matplotlib
- pip install wordcloud
- pip install pandas
- pip install geoplotlib
- apt-get install libxml2-dev libxslt1-dev python-dev
- pip install pyquery
- pip install xlrd
Simply run Sentiment_Analyzer_Gui.py in python2.7. Python3 is not supported
python2.7 Sentiment_Analyzer_Gui.py
UI shows up where tweet parameters can be defined. Parameters are:
- Keyword
- Number of tweets
- Language of tweets
- Tweets from
- Tweets to
- Geolocation - not implemented yet
You can run all 4 steps of SentiSteem pipeline with one button but every step can also be executed separately with it's own button.
Adjust app.config to fit your preferred folder structure, GUI size and also words skipped in wordclouds.
