javascript
code
Python
verified
Free Download
devices
Cross-platform
code Code Preview
Python#!/usr/bin/env node
/**
* Email Extractor for Node.js
* Extract and validate email addresses using JavaScript
*/
const fs = require('fs').promises;
const readline = require('readline');
const EMAIL_REGEX = /\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b/g;
async function extractEmailsFromFile(filePath) {
const emails = new Set();
const fileStream = require('fs').createReadStream(filePath);
const rl = readline.createInterface({
input: fileStream,
crlfDelay: Infinity
});
for await (const line of rl) {
const found = line.match(EMAIL_REGEX);
if (found) {
found.forEach(email => emails.add(email.toLowerCase()));
}
}
return Array.from(emails).sort();
}
async function extractFromJSON(filePath) {
const content = await fs.readFile(filePath, 'utf8');
const data = JSON.parse(content);
const emails = new Set();
function findEmails(obj) {
if (typeof obj === 'string') {
const found = obj.match(EMAIL_REGEX);
if (found) found.forEach(e => emails.add(e.toLowerCase()));
} else if (Array.isArray(obj)) {
obj.forEach(findEmails);
} else if (obj && typeof obj === 'object') {
Object.values(obj).forEach(findEmails);
}
}
findEmails(data);
return Array.from(emails).sort();
}
if (require.main === module) {
const args = process.argv.slice(2);
extractEmailsFromFile(args[0]).then(emails => {
console.log(`Found ${emails.length} unique emails`);
});
}
info About This Tool
The Email Extractor for Node.js is a pure JavaScript implementation for extracting email addresses. Perfect for JavaScript developers who want to stay in their ecosystem without Python dependencies.
Key Features
- Node.js Native - Pure JavaScript, no Python required
- Async/Await - Modern ES6+ syntax with non-blocking I/O
- Stream Processing - Handle large files efficiently
- JSON Parsing - Extract emails from API responses
- CLI Interface - Easy integration with npm scripts
- Zero Dependencies - Uses only Node.js built-in modules
Supported Formats
- Plain text files (.txt, .log)
- JSON files and API responses
- JavaScript source files (.js, .jsx, .ts, .tsx)
- Any UTF-8 text format
Requirements
- Node.js 14+ (LTS recommended)
- No npm packages required
Note: This script is for Node.js (backend). For browser usage, modifications to use File API would be needed.
download Download Script
Need Full Automation?
Try Postigo for automated email campaigns with AI personalization
rocket_launch Start Free Trial