Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 发送电子邮件时出错:引发SMTPAuthenticationError(代码,resp)_Python_Email_Smtplib - Fatal编程技术网

Python 发送电子邮件时出错:引发SMTPAuthenticationError(代码,resp)

Python 发送电子邮件时出错:引发SMTPAuthenticationError(代码,resp),python,email,smtplib,Python,Email,Smtplib,我正在尝试使用smtp模块发送电子邮件,但我有一个错误: File "/usr/lib/python2.7/smtplib.py", in login raise SMTPAuthenticationError(code, resp) smtplib.SMTPAuthenticationError: (534, '5.7.14)... 有人已经犯了这个错误?你知道怎么修理吗 守则: def sendNotification(): recepients_list = "emai

我正在尝试使用smtp模块发送电子邮件,但我有一个错误:

File "/usr/lib/python2.7/smtplib.py", in login    
 raise SMTPAuthenticationError(code, resp) smtplib.SMTPAuthenticationError: (534, '5.7.14)...
有人已经犯了这个错误?你知道怎么修理吗

守则:

def sendNotification():
    recepients_list = "emailsmtplibtest@gmail.com"
    subject = 'Subject'
    message = "Message" 
    sendemail(recepients_list,subject,message)

def sendemail(to_addr_list, subject, message):
    username = 'emailsmtplibtest@gmail.com'
    password = 'passtest'   
    from_addr = 'emailsmtplibtest@gmail.com'    
    server = smtplib.SMTP('smtp.gmail.com', 587)
    server.ehlo()
    server.starttls()
    server.login(username,password)
    newmessage = '\r\n'.join([
              'To: %s' %recepient_list,
               'From: %s' % from_addr,
                'Subject: %s' %subject,
                '',
                message
                ])
    try:    
        server.sendemail(from_addr, to_addr_list,newmessage)
        print 'notification sent'
    except:
        print 'error sending notification'
    server.quit()


sendNotification()

转到Google的帐户安全设置:

查找“访问不太安全的应用程序”字段。 将其设置为“允许”

请重试您的脚本,将
server.sendmail()
更改为
server.sendmail()
(534,b'5.7.14请通过您的web浏览器和\n5.7.14登录,然后重试。\n5.7.14有关详细信息,请访问\n5.7.14 h16sm7090987wrc.89-gsmtp')

试一试

允许不太安全的应用:打开
某些应用程序和设备使用不太安全的登录技术,这可能会使您的帐户易受攻击。你可以关闭对这些应用程序的访问(我们推荐),或者不顾风险选择使用它们。

我也遇到了同样的问题。是的,成功了。通过启用您的gmail帐户安全设置->允许不太安全的应用程序,我可以发送一封简单的电子邮件 从一个gmail到另一个gmail帐户


警告:谷歌不建议允许访问您的谷歌账户的应用程序安全性较低。这可能是一种安全威胁。实验结束后把它关掉。

没有一个不太安全的选项对我有效。最终的效果是设置双因素身份验证,然后生成特定于应用程序的密码。此处的说明:

如果我不得不猜测,这可能是某种TLS/SSL问题。你走这条路了吗?你可以尝试禁用验证码或在你的gmail帐户中注册一个特定于应用程序的密码:谢谢你的提示,但仍然不起作用!我认为这不会导致您报告的特定错误,但上面的代码中有一个输入错误。我认为您应该调用server.sendmail(),而不是server.sendmail()(注意“mail”之前的“e”)。另一方面,我刚刚尝试使用smtplib通过gmail发送邮件,基本上与您列出的步骤相同,这对我很有效。我仍然认为问题在于你的谷歌账户的安全设置。即使启用了安全性较低的设备,我也无法登录。我的密码是正确的,我使用的代码与网站中提到的相同correct@proprius我也是。你找到答案了吗?用这个链接直接把你放在想要的页面上:@Anupam对我来说是一样的。你明白了吗?@NityeshAgarwal如果我没记错的话,我发现即使我启用了它,它也会自动设置为禁用。我想我只是试了几次就成功了