list_alt
code
Python
verified
Free Download
devices
Cross-platform
code Code Preview
Python#!/usr/bin/env python3
"""
Email List Formatter
Convert any file format to clean CSV with proper formatting
"""
import csv
import re
EMAIL_PATTERN = r'[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}'
def format_email_list(input_file, output_file, output_format='csv'):
"""Format email list from any input to clean output"""
emails = set()
# Extract emails from input file
with open(input_file, 'r', encoding='utf-8') as f:
content = f.read()
found = re.findall(EMAIL_PATTERN, content)
emails = sorted(set(e.lower() for e in found))
# Output based on format
if output_format == 'csv':
with open(output_file, 'w', newline='') as f:
writer = csv.writer(f)
writer.writerow(['email'])
for email in emails:
writer.writerow([email])
elif output_format == 'txt':
with open(output_file, 'w') as f:
f.write('\n'.join(emails))
elif output_format == 'json':
import json
with open(output_file, 'w') as f:
json.dump({'emails': emails}, f, indent=2)
return len(emails)
def convert_format(input_file, output_format):
"""Quick format conversion"""
formats = {'csv': '.csv', 'txt': '.txt', 'json': '.json'}
output_file = input_file.rsplit('.', 1)[0] + formats[output_format]
count = format_email_list(input_file, output_file, output_format)
print(f"Formatted {count} emails to {output_format}")
if __name__ == '__main__':
import sys
count = format_email_list(sys.argv[1], 'output.csv')
print(f"Formatted {count} emails")
info About This Tool
The Email List Formatter converts email lists between different formats. Auto-detects emails from any input and outputs clean, standardized files.
Key Features
- Auto Detection - Extracts emails from any text format
- Multiple Formats - CSV, TXT, JSON output options
- Deduplication - Removes duplicates automatically
- Normalization - Converts all emails to lowercase
- Batch Processing - Handle large files efficiently
Supported Formats
- Input - TXT, CSV, JSON, HTML, any text file
- Output - CSV (default), TXT (one per line), JSON
Requirements
- Python 3.7+
- No external dependencies
download Download Script
Need Full Automation?
Try Postigo for automated email campaigns with AI personalization
rocket_launch Start Free Trial