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