Welcome to the WhatsApp Chat Analyzer! This project is a Streamlit-based web application designed to help you analyze your WhatsApp chat exports. By leveraging Natural Language Processing (NLP) techniques, this app provides insights into your conversations, such as message frequency, most active participants, emoji usage, and more!
- Upload and Analyze: Upload your WhatsApp chat export file (
.txt
) and analyze its content. - Message Statistics: Get statistics such as total messages, number of participants, and the most active participants.
- Word Cloud: Visualize the most frequently used words in the chat using a word cloud.
- Emoji Analysis: Analyze which emojis were used the most during the conversation.
- Activity Timeline: See when the chat is most active (daily, weekly, or monthly).
- Sentiment Analysis: Analyze the sentiment (positive, negative, neutral) of the messages using NLP.
- Top Words & Messages: Discover the most commonly used words and messages by participants.
Component | Technology/Tool |
---|---|
Frontend/UI | Streamlit |
Backend | Python |
NLP & Analysis | NLTK, Pandas, Matplotlib |
Visualization | Matplotlib, Seaborn, Wordcloud |
Deployment | Streamlit Cloud |
- Python 3.x installed on your local machine.
-
Clone the repository:
git clone https://github.com/SartHak-0-Sach/WhatsApp_chat_analyzer_NLP_project.git cd WhatsApp_chat_analyzer_NLP_project
-
Install dependencies: Use the following command to install required dependencies:
pip install -r requirements.txt
-
Run the Streamlit app:
streamlit run app.py
-
Upload WhatsApp chat file:
- Export your WhatsApp chat as a
.txt
file from the WhatsApp app. - Upload the file into the application and start analyzing!
- Export your WhatsApp chat as a
- Chat File Upload: Upload your WhatsApp
.txt
export file. - Data Preprocessing: The app parses and processes the chat text to extract key information such as timestamps, participant names, and messages.
- Analysis:
- Message Counts: Shows how many messages each participant sent.
- Word Cloud: A graphical representation of the most common words.
- Emoji Usage: Displays the most used emojis in the conversation.
- Activity Timeline: Visualizes activity over time.
- Sentiment Analysis: Categorizes the overall sentiment of the conversation.
- Export your WhatsApp chat from the app.
- Run the Streamlit app locally.
- Upload your
.txt
chat export file. - View the detailed analytics of your chat, including activity, sentiment, and message breakdowns.
Feel free to open issues or pull requests if you find bugs or want to enhance the app. Contributions are welcome!
Sarthak Sachdev
- GitHub: @Sarthak-0-Sach
- LinkedIn: Sarthak Sachdev
- Twitter: @sarthak_sach69
- Special thanks to CampusX youtube channel for guidance and programming support.