Conversational Analytics and Plotting Library
Sentiment analysis and charting library supporting Messenger data dumps
Converse is a flexible charting library in python that makes sentiment analysis and charting easier. The aim is to provide strong functionality out of the box with minimal code while being configurable enough to support larger projects.
pip install converse
That's all, really. For a full walkthrough of the basic features, look here - Converse: An easy sentiment analysis library for Messenger - or in
docker/messages/Demo.ipynb. For a ready-to-go installation with a (really small, faked) conversation, run:
docker pull hrishioa/converse
Converse currently supports only facebook messenger (Whatsapp dump support is planned).
The first step is to download your chat data (use one of these guides to do so - make sure to pick JSON over HTML as the format), and unzip the archive. Converse is completely offline (even for plotting), and all your information is local.
Create new jupyter notebook (ideally in the messages directory) with
The following piece of code should have you up and plotting:
from converse import Conversation from tqdm import tqdm_notebook as tqdm from plotly.offline import init_notebook_mode, iplot init_notebook_mode(connected=True) convo = Conversation() convo.load("path-to-message.json") # structure is usually archive-root/convo-name/message.json iplot(convo.plot())
- Textblob - Sentiment Analysis
- Pandas - data management
- Plotly - graphing
- FuzzyWuzzy - string searching
This project is licensed under GPLv3.
This project was cobbled together from tools built by the author in a weekend to do some standard sentiment analysis. Still very much in alpha, maybe even pre-alpha. Do submit any issues or problems, I'll do my best to patch!