Skip to content

rachitdani/Whatsapp-Chat-Analyzer

Repository files navigation

Whatsapp Chat Analyzer

A streamlit app used to analyze your whatsapp chats

Link to app --> https://whatsapp-chat-analyzer-project.streamlit.app/

Project Structure

The project is organized as follows:

  • requirements.txt: This file lists all the Python libraries and dependencies required to run the project.

  • .gitignore: This file specifies which files and directories should be ignored by Git.

  • README.md: This file is an outcome of displaying the projects documentation.

  • notebooks: This directory contains Jupyter notebook file which has the rough code along with sample chat file which was created during the project implementation.

  • setup.sh and Procfile: Files required for the code deployment in cloud.

  • preprocessor.py : The file where the data preprocessing and cleaning is done.

  • utils.py : The file where the functions are created and these functions are used in the app.py

  • app.py: This is the main file for the analysis of whatsapp chats in web using streamlit.

Getting Started

To get started with this project, follow these steps:

  1. Clone the repository to your local machine using the following command:
git clone https://github.com/rachitdani/Whatsapp-Chat-Analyzer.git
  1. Navigate to the project directory:
cd Whatsapp-Chat-Analyzer.git
  1. Install the required dependencies using pip:
pip install -r requirements.txt
  1. Run the Streamlit application:
streamlit run app.py
  1. A web app pop-up will appear where you will upload your whatsapp chat file to be analyzed

How to Export data from Whatsapp

For downloading your whatsapp file follow these steps :

  1. Go to the chat you want to analyze it can be a group chat or a personal chat
  2. Then go to chat info and scroll down until you see the Export Chat Option
  3. Now Click on Without Media and download it
  4. Now Extract the file and upload the file to the streamlit app and great you have just got your data analyzed.

Screenshots

Main streamlit webpage

Screenshot 2024-01-07 at 12 28 16 AM

Upload Chat File and Select Overall for Overall Group Analysis or any user in the dropdown and Click on Show Analysis

Screenshot 2024-01-07 at 12 34 00 AM Screenshot 2024-01-07 at 12 28 40 AM Screenshot 2024-01-07 at 12 28 48 AM Screenshot 2024-01-07 at 12 28 56 AM Screenshot 2024-01-07 at 12 29 02 AM Screenshot 2024-01-07 at 12 29 06 AM

Contributing

Contributions are welcome !! I have only included the basic stopwords nltk library along with a few additional stopwords there are a lot more in our regular chatting language also a lot more features can be added to this project . If you'd like to contribute to this project, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix: git checkout -b feature-name.
  3. Make your changes and commit them: git commit -m 'Description of your changes'.
  4. Push your changes to your fork: git push origin feature-name.
  5. Create a pull request on the original repository.