Skip to content

A powerful Python tool that intelligently consolidates contact information from multiple CSV files, handling different languages and formats while automatically detecting and merging duplicates.

Notifications You must be signed in to change notification settings

victoryudi/leads-unifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔄 Leads Unifier

Python Version MIT License PRs Welcome

Seamlessly unify your contact lists, eliminate duplicates, and maintain data clarity.

Key FeaturesQuick StartUsageContribute


🎯 Overview

Tired of managing multiple contact lists? Leads Unifier is your solution for consolidating numerous CSV contact lists into a single, clean, and organized dataset. Perfect for sales teams, marketers, and anyone dealing with multiple lead sources.

✨ Key Features

  • Smart Duplicate Detection - Intelligently identifies and merges duplicate contacts
  • Automatic Column Recognition - Finds name, email, and phone fields regardless of column naming
  • Data Preservation - Keeps the most complete information when merging duplicates
  • Real-time Progress - Beautiful progress tracking and logging
  • Data Normalization - Standardizes emails and phone numbers automatically

⚡ Quick Start

# Clone the repository
git clone https://github.com/victoryudi/leads-unifier.git

# Navigate to the project
cd leads-unifier

# Install dependencies
pip install -r requirements.txt

# Run the unifier
python leads_unifier.py

📋 Requirements

Your CSV files should contain at least these columns (naming can vary):

  • Name (e.g., 'name', 'full name', 'contact')
  • Email (e.g., 'email', 'e-mail', 'mail')
  • Phone (e.g., 'phone', 'telephone', 'mobile')

🚀 Usage

  1. Place Your Files

    leads-unifier/
    ├── input/
    │   ├── leads_list1.csv
    │   ├── leads_list2.csv
    │   └── more_leads.csv
    
  2. Run the Script

    python leads_unifier.py
  3. Get Your Results

    leads-unifier/
    ├── output/
    │   └── combined_leads.csv
    ├── logs/
    │   └── processing_20240223_143022.log
    

📊 What You Get

▶ Processing leads_list1.csv
  ✓ Found: name, email, phone
  ✓ Extracted 1,500 contacts

▶ Processing leads_list2.csv
  ✓ Found: email, phone, full_name
  ✓ Extracted 2,300 contacts

✨ Complete! 
  • Files Processed: 2
  • Total Contacts: 3,800
  • Duplicates Removed: 450
  • Final Unique Leads: 3,350

💡 Perfect For

  • Sales Teams - Combine leads from multiple campaigns
  • Marketing Teams - Merge contact lists from different events
  • Recruiters - Consolidate candidate lists
  • Event Organizers - Unify attendee lists from multiple sources

🛠 Configuration

# config.py
INPUT_DIR = "input/*.csv"
OUTPUT_FILE = "output/combined_leads.csv"
LOG_DIR = "logs"

🤝 Contributing

We love your input! We want to make contributing to Leads Unifier as easy and transparent as possible.

You can help by:

  • 🐛 Reporting bugs
  • 📝 Improving documentation
  • 🔍 Reviewing pull requests
  • ✨ Adding new features

🔮 Roadmap

  • Web interface for drag-and-drop processing
  • Custom column mapping interface
  • Advanced duplicate detection algorithms
  • Export to multiple formats (XLSX, JSON)
  • API integration capabilities

📜 License

MIT License - feel free to use this project commercially, modify it, or share it with others.

💌 Contact & Support

Found a bug? Have a feature request? We'd love to hear from you!

  • 🐛 Submit an issue
  • 🌟 Star the repo if you find it useful!
  • 🔄 Fork it and submit your PRs

Made with ❤️ by Yudi

About

A powerful Python tool that intelligently consolidates contact information from multiple CSV files, handling different languages and formats while automatically detecting and merging duplicates.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published