python 自动发送邮件遇到的问题
在学习自动化测试高级应用,根据内容写关于自动发送邮件出现了几个问题以及解决办法:
问题1:
代码写好之后,运行的时候,出现如下报错:
SMTPAuthenticationError: (550, '\xd3\xc3\xbb\xa7\xce\xde\xc8\xa8\xb5\xc7\xc2\xbd')
原因:网上搜索之后,这个问题是因为发送方邮箱没有开启smtp服务。
解决办法:登录到发送方邮箱中开启相关的服务;
问题2:执行脚本提示如下报错
SMTPAuthenticationError: (535, 'Error: authentication failed')
原因:和问题1相关联,开启了发送方邮箱的smtp相关服务,开启过程中需要设置的客户端授权码,第三方使用的话,是通过授权码进行登录使用的,所以代码中设置的password需要改成设置的授权码;
问题3:执行脚本之后,出现下边错误提示
SMTPDataError: (554, 'DT:SPM 126 .....
原因:只赋值了msg['Subject'], 没有赋值msg['From'], msg['To'],导致出现554情况,更改了后就好了。
解决方法:在脚本中添加上类似下边语句
msg['From']='名称<发件人邮箱地址>'
msg['To']='收件人邮箱地址'
问题4:发送成功之后,文档中没有显示相关的内容
解决办法:MIMEText初始化的时候,中文的第二个参数要用'plain',用'text',中文就显示不出来。