About whatstk¶
whatstk is a python package providing tools to parse, analyze and visualize WhatsApp chats developed by Lucas Rodés-Guirao. Easily convert your chats to csv or simply visualize statistics using the python library. The package uses pandas to process the data and plotly to visualise it.
You can also try a live demo.
The project is distributed under the GPL-3.0 license and is available on GitHub.
First contact with whatstk¶
whatstk is built around BaseChat
object interface, which requires class method
from_source
to be implemented. This method loads and parses the source
chat file into a pandas.DataFrame.
Below, we use method df_from_whatsapp
to load LOREM chat. To test it with your own
chat, simply export it as a txt file to your computer and then use class argument filepath
, as
shown in the following example.
>>> from whatstk import df_from_whatsapp
>>> from whatstk.data import whatsapp_urls
>>> df = df_from_whatsapp(filepath=whatsapp_urls.LOREM)
>>> df.head(5)
date username message
0 2020-01-15 02:22:56 Mary Nostrud exercitation magna id.
1 2020-01-15 03:33:01 Mary Non elit irure irure pariatur exercitation. 🇩🇰
2 2020-01-15 04:18:42 +1 123 456 789 Exercitation esse lorem reprehenderit ut ex ve...
3 2020-01-15 06:05:14 Giuseppe Aliquip dolor reprehenderit voluptate dolore e...
4 2020-01-15 06:56:00 Mary Ullamco duis et commodo exercitation.
Installation & compatibility¶
This project is on PyPI, install it with pip:
pip install whatstk
Project has been tested in Python>=3.7.
From source¶
Clone the project from the official repository and install it locally
git clone https://github.com/lucasrodes/whatstk.git
cd whatstk
pip install .
Extensions¶
To use Google Drive or Chat Generation support, install the library along with the corresponding extensions:
pip install whatstk[gdrive]
pip install whatstk[generate]
Or install the full suite:
pip install whatstk[full]
Support¶
You can ask questions and join the development discussion on GitHub. Use the GitHub issues section to report bugs or request features and GitHub discussions to open up broader discussions. You can also check the project roadmap.
For more details, refer to the contribute section.
Why this name, whatstk?¶
whatstk stands for “WhatsApp Toolkit”, since the project was initially conceived as a python library to read and process WhatsApp chats. It currently only supports WhatsApp chats, but this might be extended in the future.