【问题标题】:Something went wrong when send mail via gmail using python使用 python 通过 gmail 发送邮件时出现问题
【发布时间】:2021-11-19 02:43:12
【问题描述】:

我将使用 python 通过 gmail smtp 发送邮件。我将添加我的代码。

    gmail_user = 'mymail@gmail.com'
    gmail_password = 'xxxxxx'
    context = ssl.create_default_context()

    sent_from = gmail_user
    to = ['yyyyyyyyy@gmail.com']
    subject = 'xxxxx'
    body = 'xxxxxxxxxx'

    email_text = """\
    From: %s
    To: %s
    Subject: %s

    Car crash accident has been happened in xxxx.
    You can check the location on a Waze map with below link.
    %s
    """ % (sent_from, ", ".join(to), subject, body)

    try:
        server = smtplib.SMTP('smtp.gmail.com', 587)
        server.ehlo()
        server.starttls(context=context)
        server.login(gmail_user, gmail_password)
        server.sendmail(sent_from, to, email_text)
        server.close()

        print('Email sent!')
    except:
        print('Something went wrong...')

但我收到“出了点问题...”。我希望收到“已发送电子邮件!”。

请帮助我。谢谢。

【问题讨论】:

  • 删除最后一个try-except 语句,并在没有它们的情况下运行其中的代码,然后告诉错误你得到了什么。
  • 我已经按照您的建议进行了尝试。然后,我收到如下错误。 Username and Password not acceptable 但我可以使用该信息登录并查看邮件。
  • 用户名和密码是否正确?因为只有在获取错误凭据时才会显示错误
  • 是的,我现在可以用 gmail 和密码登录 google 帐户并查看邮件。
  • 然后在您的 gmail 设置中,您可能需要启用“访问不太安全的应用程序”,还需要进行 2 因素身份验证。您可以在谷歌中查看如何启用 2 因素身份验证

标签: python gmail


【解决方案1】:

错误在这一行 -

server = smtplib.SMTP_SSL('smtp.gmail.com', 587)

要使用smtplib 连接服务器,这不会执行此操作。 (我什至不知道SMTP_SSL 是否存在),你应该尝试这样做-

server = smtplib.SMTP('smtp.gmail.com', 587)

第二次也去掉server.ehlo(),需要一次。

所以,最后,你得到 -

try:
    server = smtplib.SMTP('smtp.gmail.com', 587)
    server.ehlo()
    server.starttls(context=context)

    server.login(gmail_user, gmail_password)
    server.sendmail(sent_from, to, email_text)
    server.close()

    print('Email sent!')
except:
    print('Something went wrong...')

编辑 -

如果gmail无法识别您的用户名和密码,那是因为您必须设置两步验证,您可以查看how

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-28
    • 1970-01-01
    • 2021-07-17
    • 1970-01-01
    • 1970-01-01
    • 2012-12-13
    • 2021-05-27
    • 2011-07-30
    相关资源
    最近更新 更多