Skip to main content
python-email-verifier
===================

The simplest possible way to verify an email address in Python.

Meta
----

- Author: WHOIS API, Inc.
- Email: support@whoisxmlapi.com
- Site: https://emailverification.whoisxmlapi.com/


Prerequisites
-------------

To use this library, you'll need to create a free Email Verification API account:
https://emailverification.whoisxmlapi.com/

If you haven't done this yet, please do so now.


Documentation
-------------

Documentation available `here <https://emailverification.whoisxmlapi.com/docs>`_.

Installation
------------

To install ``email-verifier`` using `pypi <https://pypi.org/>`_, simply run:

.. code-block:: console

$ pip install email-verifier

In the root of your project directory.


Usage
-----

Once you have `email-verified` installed, you can use it to easily verify any
email address.


.. code-block:: python

from emailverifier import Client
from emailverifier import exceptions

client = Client('Your-api-key')

try:
data = client.get("support@whoisxmlapi.com")
except exceptions.HttpException:
# If you get here, it means service returned HTTP error code
pass
except exceptions.GeneralException:
# If you get here, it means you cannot connect to the service
pass
except exceptions.UndefinedVariableException:
# If you get here, it means you forgot to specify the API key
pass
except exceptions.InvalidArgumentException:
# If you get here, it means you specified invalid argument
# (options should be a dictionary)
pass
except:
pass
# Something else happened related. Maybe you hit CTRL-C
# while the program was running, the kernel is killing your process, or
# something else all together.

print(data)

# Use data.json_string to get raw data in JSON.
# You can access any response field as a class property
# by converting field name from "camelCase" to "snake_case"
print("Email address: " + data.email_address)
print("Format: " + str(data.format_check))
print("DNS: " + str(data.dns_check))
print("SMTP: " + str(data.smtp_check))
print("Catch all: " + str(data.catch_all_check))
print("Disposable: " + str(data.disposable_check))
print("Free: " + str(data.free_check))
print("Last audit date: " + str(data.audit.audit_updated_date))

Here's the sort of data you might get back when performing a email verification
request:

.. code-block:: json

{
"emailAddress": "support@whoisxmlapi.com",
"formatCheck": "true",
"smtpCheck": "true",
"dnsCheck": "true",
"freeCheck": "false",
"disposableCheck": "false",
"catchAllCheck": "true",
"mxRecords": [
"ALT1.ASPMX.L.GOOGLE.com",
"ALT2.ASPMX.L.GOOGLE.com",
"ASPMX.L.GOOGLE.com",
"ASPMX2.GOOGLEMAIL.com",
"ASPMX3.GOOGLEMAIL.com",
"mx.yandex.net"
],
"audit": {
"auditCreatedDate": "2018-04-19 18:12:45.000 UTC",
"auditUpdatedDate": "2018-04-19 18:12:45.000 UTC"
}
}

Metadata

Release files for email-verifier 1.0.0

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

Source distribution (sdist)

Source distribution for email-verifier 1.0.0
File Size Uploaded
email-verifier-1.0.0.tar.gz 5.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for email-verifier 1.0.0
File Interpreter ABI Platform
email_verifier-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 13.5 kB

Release files / email-verifier-1.0.0.tar.gz

Download URL email-verifier-1.0.0.tar.gz
Size 5.3 kB
Tags Source
SHA-256 checksum
How to use checksums
39444abcd17aa637cfd0cc34c175c935e316ed834b1827825c14df44b9c308e6
BLAKE2b-256 checksum
How to use checksums
fcaf89e492c11e755120ecbe3ed318f89cb39b56b2576fe6e69baa3601e1f360
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

Release files / email_verifier-1.0.0-py3-none-any.whl

Download URL email_verifier-1.0.0-py3-none-any.whl
Size 8.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0551fd28178736371db3dcaaf6ea44c937951734980f6e35418912050e6c6e03
BLAKE2b-256 checksum
How to use checksums
d3f48789196ceecf7347ff7175c88f99b389538259ec7e06627c5d7319952286
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

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