跳转到主要内容

Django包,用于检测约890个由一次性电子邮件服务使用的域名

项目描述

=============================== django-disposable-email-checker

PyPI version PyPI version Requirements Status

Django包,用于检测在~890到~8,600个域名之间由一次性电子邮件服务使用的域名。您可以将任何电子邮件与我们的内部列表中的约890个一次性电子邮件服务使用的域名进行验证。您还可以选择将每个域名与Block-Disposable-Email.com API进行核对,该API覆盖约8,600个域名。

此代码最初是在https://github.com/aaronbassett/DisposableEmailChecker开发的。然而,PyPI的所有权已转让给https://github.com/jheld/DisposableEmailChecker,因此所有未来的贡献都应提交到新的GitHub仓库。

安装

从PyPI安装一次性电子邮件检查器

pip install django-disposable-email-checker

一次性电子邮件检查器包含约890个电子邮件的列表。如果您想提供自己的电子邮件列表,请创建一个返回要阻止的域名的函数。

from disposable_email_checker.emails import email_domain_loader

def custom_email_domain_loader():
    # Anyone still using AOL will be too much of a customer service burden
    return [
        "aol.com",
    ] + email_domain_loader()

然后将包括函数名的完整路径添加到您的设置中

DEC_LOADER = "my.package.custom_email_domain_loader"

如果您想使用BDE集成,请将您的API密钥添加到Django设置中

BDEA_APIKEY = "abcnotarealkey123"

可选地,您可以配置BDE API的超时时间(以秒为单位,默认为5)

BDEA_TIMEOUT = 2

可以设置一个默认的错误消息,用于全局验证检查(这是可选的,如果为空,则默认为_('被阻止的电子邮件提供商。')

BDEA_MESSAGE = '<blocked email message>'

添加到您的模型中

设置完成后,将DisposableEmailField添加到您的模型中。

from django.db import models
from disposable_email_checker.fields import DisposableEmailField

class MyModel(models.Model):
    email = DisposableEmailField()

DisposableEmailField有几个可选参数

  • whitelist - 一份始终允许的电子邮件列表。默认为[]
  • message - 当验证失败时,ValidationError使用的错误消息。默认为_('被阻止的电子邮件提供商。')
  • code - 当验证失败时,ValidationError使用的错误代码。默认为"invalid"。

使用验证器

如果您想单独使用验证器

from django.core.exceptions import ValidationError
from disposable_email_checker.validators import validate_disposable_email
email = "emailaddress@readmetest.com"  # replace with your own value

try:
    validate_disposable_email(email)
except ValidationError:
    pass

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

django-disposable-email-checker-2.0.3.tar.gz (15.9 kB 查看哈希值)

上传时间

构建分布

django_disposable_email_checker-2.0.3-py3-none-any.whl (14.0 kB 查看哈希值)

上传时间 Python 3

支持者