Python 3メール送信
1591 ワード
テスト済みの送信メールコード:
問題解決と注意点:
1.エラー:Error:A secure connection is requiered(such as ssl)
解決:メールボックスSSL検証の問題のため、smtplib.SMTP()をsmtplibに変更する.SMTP_SSL()、ポート番号465
2.エラー:535,b'Error:authentication failed'
解決:ユーザー名が正しくないため、コードのユーザー名はメールアドレス@の前の部分に記入するか、メールボックスに設定されたアカウントのニックネーム、例えば下の図のニックネームMorningとモザイク部分はユーザー名として使用できます.
3.SMTPサーバは、送信されたメールボックスに応じて選択することができ、コードで163メールボックスを使用するとmail_とするhost = "smtp.163.com"
「smtp.126.com」「smtp.qq.com」などに変更できます
4.コードのパスワードmail_passは認証コードであり、メールボックスのパスワードではなく、第三者メールクライアントにログインするための専用パスワードです.
QQメールボックスは、設定→アカウント→認証コードを生成することができます.網易メールボックス126/163は、設定→クライアント認証パスワード
import smtplib
from email.mime.text import MIMEText
# SMTP
mail_host = "smtp.163.com" # SMTP
mail_user = "username" #
mail_pass = "passwd" # ( , )
sender = '[email protected]' #
receivers = ['[email protected]'] #
content = 'Python Send Mail !'
title = 'Python SMTP Mail Test' #
message = MIMEText(content, 'plain', 'utf-8') # , ,
message['From'] = "{}".format(sender)
message['To'] = ",".join(receivers)
message['Subject'] = title
try:
smtpObj = smtplib.SMTP_SSL(mail_host, 465) # SSL , 465
smtpObj.login(mail_user, mail_pass) #
smtpObj.sendmail(sender, receivers, message.as_string()) #
print("mail has been send successfully.")
except smtplib.SMTPException as e:
print(e)
問題解決と注意点:
1.エラー:Error:A secure connection is requiered(such as ssl)
解決:メールボックスSSL検証の問題のため、smtplib.SMTP()をsmtplibに変更する.SMTP_SSL()、ポート番号465
2.エラー:535,b'Error:authentication failed'
解決:ユーザー名が正しくないため、コードのユーザー名はメールアドレス@の前の部分に記入するか、メールボックスに設定されたアカウントのニックネーム、例えば下の図のニックネームMorningとモザイク部分はユーザー名として使用できます.
3.SMTPサーバは、送信されたメールボックスに応じて選択することができ、コードで163メールボックスを使用するとmail_とするhost = "smtp.163.com"
「smtp.126.com」「smtp.qq.com」などに変更できます
4.コードのパスワードmail_passは認証コードであり、メールボックスのパスワードではなく、第三者メールクライアントにログインするための専用パスワードです.
QQメールボックスは、設定→アカウント→認証コードを生成することができます.網易メールボックス126/163は、設定→クライアント認証パスワード