Pythonはメッセージ554DTを送信:SPMは解決済み

  説明:この例では、メールボックス163を使用しています

まず、エラーメッセージ

  SMTPメールの使用は、次のようなエラーが発生します。

  554、b'DT:SPM 163 smtp10、DsCowACXeOtmjRRdsY8aCw - 21947S2 1561628007、http://mail.163.com/help/help_spam_16.htm?ip=36.110.94.251&hostid=smtp10&time=1561628007' を参照してください。

第二に、調査とその理由

  163 Eメールの設定1.認証コードかどうかを確認し、認証コードの右。与えられていない:535、b'Error:認証が「失敗しました

  2.チェックコードメッセージフォーマット仕様

    コードの次のセクション、チュートリアル初心者投稿ヘッダ。実際、送信済みアイテムを見て、送信者のエイリアス(表示示し代わっを)、受信者は送信者のニックネームは、あなた自身で見ています。図は次のとおりです。

- * -コーディング:UTF-8 - * - ノラ

インポートしたりするsmtplib
 から email.mime.text 輸入ます:MIMEText
 から email.header インポートヘッダー
 インポート時間

MAIL_SERVER = " smtp.163.com " 
mail_port = 25 
差出人 = " 163 @ xxxxxは.COM " 
sender_password = " XXXXXX "   授权码 
受信機= " [email protected] " 


メッセージ =ます:MIMEText(Pythonの邮件发送测试...' ' 普通' ' UTF-8 ' #1 メッセージ['から']センダ= 
#1 メッセージ['と'] =受信 
メッセージ[ ' から' =ヘッダー(] " 菜鸟教程"' UTF-8 ' 
メッセージ[ ' ' ] =ヘッダ(" 测试"' UTF-8 ' 

SEND_TIME = time.strftime(' %Y-%M-%D%H:%のM:%のS ' 、time.localtime(時間。時間())) 
対象= ' 邮件测试' + SEND_TIME 
メッセージ[ ' 件名' ] = 主題の


試み
    smtp_obj = smtplib.SMTP()
    smtp_obj.connect(MAIL_SERVER、mail_port)
    smtp_obj.login(差出人、sender_password)
    smtp_obj.sendmail(差出人、[受信機] message.as_string())
    プリント' 成功!' を除くsmtplib.SMTPException eと:
     印刷' !失敗' プリント(E)

 

  重点是:收到几封邮件后,收不到了,换收件人也收不到,猜测是163禁发了。点上图中帮助可以看到下图,所以善意的伪装也会产生误会。

三、解决方法

  From和To使用发件人和收件人真实邮箱地址,发送即可成功。

  

# -*- coding: utf-8 -*-
# Nola

import smtplib
from email.mime.text import MIMEText
import time

mail_server = "smtp.163.com"
mail_port = 25
sender = "[email protected]"
sender_password = "xxxxxx"  # 授权码
receivers = "[email protected]"


message = MIMEText('Python邮件发送测试...', 'plain', 'utf-8')
message['From'] = sender
message['To'] = receivers

send_time = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
subject = '邮件测试' + send_time
message['Subject'] = subject


try:
    smtp_obj = smtplib.SMTP()
    smtp_obj.connect(mail_server, mail_port)
    smtp_obj.login(sender, sender_password)
    smtp_obj.sendmail(sender, [receivers], message.as_string())
    print('success!')
except smtplib.SMTPException as e:
    print('failure!')
    print(e)

 

 

 

  

  

おすすめ

転載: www.cnblogs.com/NolaLi/p/11098670.html