Python: smtpd (или альтернатива) для получения рабочей почты?
Я ищу, чтобы сделать различные обработки электронной почты - например. Осмотрите заголовки, и, если они удовлетворяют некоторым критериям (выглядят как спам), отбросьте соединение или проверьте список получателей и выполните специальную фильтрацию.
Похоже, библиотека smtpd в Python предоставляет удобный и простой интерфейс для обработки полученной электронной почты.
Нужно ли использовать handle_connect для обработки сообщения до его полной обработки (например, для удаления сообщения в случае, если заголовки выглядят как спам)? Документированы ли где-нибудь внутренние API (кроме process_message)? Пример кода где угодно?
Кроме того, кто-нибудь использовал smtpd в производстве? Есть мысли о надежности и т. Д.?
Относительно Twisted: Я пытался использовать Twisted несколько раз, и совсем как отложенная модель, но это слишком сложно для моего текущего вкуса. Я еще раз посмотрю, но сейчас меня больше интересуют не-Twisted реализации.
2 ответа
Возможно, вы захотите взглянуть на скрученную реализацию, поскольку это даст вам доступ ко всему спектру взаимодействия с клиентом. Я полагаю (хотя я никогда не использовал это в производстве), что витой можно доверять в производственной среде.