Skip to main content

Whatsapp chat analyzer with Python

Project description


Wtp is a tool to analyze Whatsapp chats.

This tool uses the chat history (that can be acquired by the Whatsapp option 'Export chat') and displays in graphs information such as:

  • number of messages sent by each user;
  • number of characters sent by each user;
  • number of messages sent at each hour;
  • etc.



from Wtp import *

wtp = Wtp("path\\to\\WhatsApp Chat with Some Group or Someone.txt")



> pip install Wtp

There is an option to download the file and run:

> python [-h] -f FILE [-i] [-e] [-u USERS] [-r HIDE] [-m_users] [-w_users] [-c_users] [-m_user_w MSGS_USER_W] [-m_users_w] [-m_chat] [-m_chat_w]


  • Common methods flags:

    • path_chat: path to the chat file (.txt);
    • path_import: path to the JSON file;
    • i: when True, initialize the object by the given JSON file. Default=False;
    • _u_: number of users to show in graph. Default=All;
    • hide: when True, display name/number of users in graph. Default=False.
  • Methods:

    • plot_msgs_users(_u_=None, hide=True): plot # of msgs by each user;
    • plot_words_users(_u_=None, hide=True): plot # of words by each user;
    • plot_charac_users(_u_=None, hide=True): plot # of characters by each user;
    • plot_user_msgs_each_day(id, hide=True, t="u: 1"): plot # of msgs of a given id by each day of the week;
    • plot_users_msgs_each_day(_u_=None, hide=True): plot # of msgs by each user by each day of the week;
    • plot_chat_msgs_each_day(): plot # of msgs by each day of the week;
    • plot_chat_msgs_each_hour(): plot # of msgs at each hour;
    • export(name = "data.json", use_pprint = False): export all data into a JSON file;
    • import_data(name = "data.json"): import all data from a given JSON file.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for Wtp, version
Filename, size File type Python version Upload date Hashes
Filename, size Wtp- (4.9 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size Wtp- (4.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page