code
code
Python
verified
Бесплатная загрузка
devices
Кроссплатформенный
code Предпросмотр кода
Python#!/usr/bin/env python3
"""
Email Extractor for HTML Files
Extract emails from HTML using BeautifulSoup4
"""
from bs4 import BeautifulSoup
import re
import requests
EMAIL_PATTERN = r'[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}'
def extract_from_html(html_content):
"""Extract emails from HTML content"""
soup = BeautifulSoup(html_content, 'html.parser')
# Remove script and style tags
for tag in soup(['script', 'style']):
tag.decompose()
text = soup.get_text()
emails = set(re.findall(EMAIL_PATTERN, text))
# Also check href attributes
for link in soup.find_all('a', href=True):
href = link['href']
if href.startswith('mailto:'):
email = href[7:].split('?')[0]
emails.add(email)
return list(emails)
def extract_from_url(url):
"""Extract emails from a web page"""
response = requests.get(url, timeout=10)
return extract_from_html(response.text)
def extract_from_file(filepath):
"""Extract emails from HTML file"""
with open(filepath, 'r', encoding='utf-8') as f:
return extract_from_html(f.read())
if __name__ == '__main__':
import sys
if len(sys.argv) > 1:
emails = extract_from_file(sys.argv[1])
for email in sorted(emails):
print(email)
info Об инструменте
Экстрактор Email из HTML-файлов использует BeautifulSoup4 для парсинга HTML-контента и извлечения всех email-адресов. Идеален для сбора контактной информации с веб-страниц или обработки сохранённых HTML-файлов.
Ключевые особенности
- Парсер BeautifulSoup4 - Надёжный парсинг HTML обрабатывает некорректную разметку
- Обнаружение mailto-ссылок - Извлекает email из href="mailto:" ссылок
- Удаление Script/Style - Очищает контент перед извлечением
- Поддержка URL - Загрузка и извлечение с реальных веб-страниц
- Дедупликация - Автоматически удаляет дубликаты email
Supported Sources
- Локальные HTML-файлы (.html, .htm)
- URL реальных веб-страниц
- HTML-строки/контент
Требования
- Python 3.7+
- BeautifulSoup4 (
pip install beautifulsoup4) - Requests (
pip install requests)
Совет: Используйте этот инструмент ответственно. Соблюдайте robots.txt и лимиты запросов при скрапинге сайтов.
download Скачать скрипт
Нужна полная автоматизация?
Попробуйте Postigo для автоматизированных email-кампаний с AI-персонализацией
rocket_launch Start Free Trial