python|python 网易stmp发送邮件及问题列举

python 网易stmp发送邮件及问题列举 构造发送邮件

def format_email(subject, content): msg = MIMEText(("机器 %s :。" % machine_name) + content) msg['Subject'] = Header(subject, 'utf-8') # 554 from和to不能相同 subject要修改 msg['From'] = ACC # 这里的recv是 a@qq.com,b@qq.com这样的 msg['To'] = recvreturn msg

建立连接并发送
def send_email(subject, content): msg = format_email(subject, content)smtp = smtplib.SMTP() for i in range(3): try: smtp.connect(HOST) smtp.login(ACC, PASSWD) break except: print_time("第三方邮箱连接失败,稍后重试。") time.sleep(5)for i in range(3): try: recv_lst = msg['To'].split(",") # 这里recv_lst 是["a@qq.com", "b@qq.com]这样的 smtp.sendmail(ACC, recv_lst, msg.as_string())print_time("邮件发送成功") break except: print_time("发送邮件失败,稍后重试。") print_time(msg) traceback.print_exc() time.sleep(5)smtp.quit()

问题 错误码554
【python|python 网易stmp发送邮件及问题列举】一个可能的原因是subject不对,尽量使用中文构造subject!!
而且这个会根据不同的ip来对相同的subject作出不同处理,在自己家网络可以发送,但是在别的地方却直接554。

    推荐阅读