Files
PrimoGuardBot/middleware/validators/email_vld.py

25 lines
745 B
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from typing import Optional
from email_validator import validate_email, EmailNotValidError, ValidatedEmail
# Настройка экспорта из этого модуля
__all__ = ("valid_email",)
def valid_email(email: str) -> Optional[str]:
"""
Валидация почты через библиотеку.
:param email: Получаемая почта.
:return: Нормализированная почта.
"""
try:
# Провека почты на валидность
email: ValidatedEmail = validate_email(email)
except EmailNotValidError:
return None
# Возвращение строки с нормализированной почтой
return email.normalized