Skip to main content

📋 Email Verifier

Introduction

This project aims to validate email addresses by checking their syntax, MX records, whether they belong to disposable email provider domains, catchall status, and if the email exists (is deliverable). It utilizes various Python packages and scripts to perform these validations.

Key Features

  • Syntax and Domain Validation: Validates email addresses for correct syntax and checks if the domain exists.
  • MX Records Check: Ensures the domain can receive emails by checking MX records.
  • Disposable Email Detection: Identifies domains belonging to disposable email providers.
  • Catchall Status Verification: Determines if the domain accepts all emails.
  • Deliverability Check: Verifies if the email exists and can be delivered.
  • Logging: Provides logging functionality to track validation processes.

Technologies Used

  • Python
  • Requests Library: For making HTTP requests.
  • BeautifulSoup: For HTML parsing.
  • Regular Expressions: For email extraction.
  • Scrapy Framework: For efficient web scraping.
  • DNSPython: For DNS-related operations.
  • Smtplib: For SMTP operations.
  • PiaPy: For VPN connectivity.
  • Openpyxl: For reading and manipulating Excel files.

Setup Instructions

  1. Clone the Repository:

    git clone <repository_url>
    cd <repository_directory>
    
  2. Install Required Packages:

    pip install -r requirements.txt
    
  3. Ensure Python 3 is Installed.

Usage

  1. Prepare Email List:

    Create a text file (emails.txt) containing the email addresses to validate, with one email per line.

  2. Run the Script:

    Execute the bulk_verifier.py script to validate the email addresses and save the results to a CSV file (emails_validated.csv).

    python bulk_verifier.py
    
  3. Review Logs:

    Optionally, review the log files in the logs directory for detailed validation process information.

Additional Libraries and Frameworks

  • dns.resolver: For DNS-related operations.
  • disposable_email_domains: For identifying disposable email provider domains.
  • smtplib: For SMTP operations.
  • Openpyxl: For reading and manipulating Excel files.

Combined Takeaways and Challenges

  • Integration of Multiple Packages: Combining various Python packages to handle different aspects of email validation required careful integration and management.
  • DNS Lookups and SMTP Connections: Understanding network protocols and error handling for robust validation.
  • Logging and Error Handling: Implementing effective logging and error handling mechanisms.
  • Scalability and Performance: Ensuring scalability and performance for processing large volumes of email addresses.

License

This project is distributed under the MIT License. See the LICENSE file for details.

Metadata

Release files for email-verifier-py4 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for email-verifier-py4 0.1.2
File Interpreter ABI Platform Actions
email_verifier_py4-0.1.2-py3-none-any.whl Python 3 none any Details for email_verifier_py4-0.1.2-py3-none-any.whl

Release files / email_verifier_py4-0.1.2-py3-none-any.whl

Download URL email_verifier_py4-0.1.2-py3-none-any.whl
Size 8.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4a42d6c379861a40131e897e7cc1e37f28f596255bc3e0701f3ab707b51f1eb3
BLAKE2b-256 checksum
How to use checksums
9a23157878e17b8ef0b51f1bdd8df1360a52a6e50a53eec49861f2f560ca3b34
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.2

Security for email-verifier-py4 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.2 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page