0

我一直在使用 Zapier 和 Pythoneverywhere 来处理一些使用 Python 的后端内容,最近我收到了 534 错误,如下所示:

File "/usr/lib64/python2.7/smtplib.py", line 622, in login raise SMTPAuthenticationError(code, resp) SMTPAuthenticationError: (534, '5.7.14 <https://accounts.google.com/signin/continue?sarp=1&scc=1&plt=AKgnsbuE\n5.7.14 VyQLZTijmufE25PUD9vfTLC3FrnAU5nlNWptaIGEMv5N2OJ6SeJr1k1LxC0yuXv1eZAMYw\n5.7.14 ejmvetuDKIBX3L9MYPGLY75EUlIuSiSHEmp-0wpi6gazhumwltHXV07K9Q0lou0t4ky1QN\n5.7.14 7jnbEIhA1W6ceSVqvdwtH7wAOKsUhDlwYhkd3-81UClaoJ7sWRCICCJJW4iQxpIDNE4Yqr\n5.7.14 Tto1BfHEYh77B5bZkRiu5BxvjOfCY> Please log in via your web browser and\n5.7.14 then try again.\n5.7.14 Learn more at\n5.7.14 https://support.google.com/mail/answer/78754 t1sm124763qtt.25 - gsmtp'"

我很确定这不是代码的问题,因为我已经使用它几个月了。我将发布一些测试代码以获得良好的衡量标准,但我真的想知道是否还有其他人收到了错误,以及他们是否找到了解决方案。

    import smtplib
    from email.MIMEMultipart import MIMEMultipart
    from email.MIMEText import MIMEText
    company = 'daves burgers'
    dealtype = '409a'
    analyst = 'Nate'
    itemId = '92081920'
    salesRep = 'shawn olsen'
    companyLink = 'html link to company'
    analystFirst = (analyst.split(' ',2))[0]
    salesRepFirst = (salesRep.split(' ',2))[0]
    contactEmail = 'contact@sana.com'
    analystEmail = "analyst@gmail.com"
    emailPass = "password"
    html = """<html>A bunch of html></html>"""
    fromaddr = analystEmail
    bcc = ['bcc@bcc.com']
    firstName=  'dave'
    msg = MIMEMultipart()
    msg['From'] = analyst
    msg['Subject'] ="Scalar - "+company+" - "+dealtype+" - onboarding"
    body = "Thanks "+salesRepFirst+".\n\n"+firstName+",\n\nPleased to e-meet you. We're looking forward to working on your valuation! To begin the onboarding process, please follow this link (link to onboarding "+companyLink+"/"+itemId+") to our onboarding platform, where you will be asked to verify information about your company as well as provide the necessary documentation for the valuation to begin. Should any questions arise while you're gathering the necessary docs, please reach out to me.\n\nOnce we receive the docs, we'll get started right away and will turn around the draft within 5-7 business days. We'll most likely want to set up a call with you once we've started the analysis. I'll reach out to you at that point.\n\nThanks!"
    msg['To'] = contactEmail
    toaddr = contactEmail
    toaddrs = [toaddr] + bcc
    msg.attach(MIMEText(body, 'plain'))
    msg.attach(MIMEText(html,'html'))
    server = smtplib.SMTP('smtp.gmail.com',587)
    server.ehlo()
    server.starttls()
    server.login(analystEmail,emailPass)
    text = msg.as_string()
    server.sendmail(fromaddr, toaddr, text)

无论我从 Zapier 或 Pythonanywhere 登录哪个电子邮件帐户,都会发生此错误(另外,值得注意的是所有帐户的设置中都允许使用“不太安全的应用程序”)。

4

1 回答 1

1

我不确定为什么要修复它,但我对这部分代码进行了更改:

    server.ehlo()
    server.starttls()

并将其更改为:

    server.ehlo()
    server.starttls()
    server.ehlo()

根据这个(Error Sending Email (Gmail) Via Python 2.6)论坛帖子。

于 2016-07-20T01:59:13.133 回答