首页 > 解决方案 > 避免被识别为垃圾邮件

问题描述

我正在尝试使用 smtp google 和 smtplib 从 python 成功发送电子邮件。电子邮件发送正确,但接收者将电子邮件视为垃圾邮件。

标题有什么问题吗?或者我怎样才能避免被识别为垃圾邮件?

from flask import render_template, current_app
from flask_babel import _
import smtplib
from email.message import EmailMessage
from email.headerregistry import Address
from email.utils import make_msgid

def send_email(subject, receiver, plain_text, html_text):
    msg = EmailMessage()
    msg['Message-ID'] = make_msgid()
    msg['Subject'] = subject
    msg['From'] = Address(name, username, 'gmail.com')
    msg['To'] = Address(receiver.fullname(), receiver.email.split('@')[0], receiver.email.split('@')[1])
    msg.set_content(plain_text)
    msg.add_alternative(html_text, subtype='html')
    server = smtplib.SMTP_SSL('smtp.gmail.com', 465)
    server.ehlo()
    server.login(email, password)
    server.send_message(msg)
    server.quit()    

标签: pythonsmtpgmailsmtplib

解决方案


我建议您在域上同时设置SPFDKIM,以增加外发电子邮件的权重。在此处阅读有关设置 SPF 和 DKIM 的更多信息。这将需要一些足够简单的 DNS 更改。

此外,对于许多垃圾邮件过滤器,一小段 HTML 格式的小邮件可能会被视为垃圾邮件。考虑发送计划文本电子邮件或带有纯文本变体的 HTML 电子邮件。


推荐阅读