pythonを実行し、定時に指定のメールボックスにメールを送信します。


本記事の例では、pythonの実現タイミングを指定されたメールボックスに送るための具体的なコードを共有します。参考にしてください。具体的な内容は以下の通りです。
リンク全体:センサー収集端はデータを収集し、端はデータベースをアップロードし、データベースからデータを取得する。
製品の端末にはレポートの自動出荷の需要があります。そして、自動で出たいレポートは時間通りにメールで指定のメールボックスに送ります。
自動送信メールにも多くのピットがあります。ここでは自動送信メールのピットを記録します。
使用:Python 3.7、win 10システム、163メールボックスはメールを送る側として、QQメールボックスはメールを受け取る側とします。
*第一歩:**二つのアカウントをそれぞれ送信と受信のアカウントとして申請します。本文では163メール、一つはqqメールです。

最初のピットは注意が必要です。上の図はqqメールボックスの中のメールボックスの設定です。アカウントでPOP 3/SMTPサービスを開く必要があります。もしPythonのコードが正しいとしても、Pythonでメールを送るのはSMTPのメール転送プロトコルパッケージです。ここにもう一つのピットがあります。このメールボックスをメールを送る側と見なすなら、ライセンスコードを覚えておく必要があります。Pythonのメールアドレスの登録は許可コードであって、パスワードではありません。

163メールボックスの設定でもPOP 3/SMTPサービスをオンにします。

SMTPサービスを開始したら、授権コードを必ず覚えてください。
*第二ステップ:*Pythonプログラミング

#      
import smtplib
#     
import email
#         
"""
         (                  ,             
        )
"""
from email.mime.multipart import MIMEMultipart
#        
from email.mime.text import MIMEText
#        
from email.mime.image import MIMEImage
#      
from email.header import Header
#################################################################################################
#         
#         
sender='        ,        @163.com'
#   163    POP3/SMTP       ,      163       
#                        ,          
password='      ,          ,          16     '
#         ,    []  ,                
receivers=['        ,        @qq.com']
###############################################################################################
#        
#         ,     mixed
mix_part=MIMEMultipart('mixed')
#       
mix_part['From']='        ,        @163.com<        ,        @163.com>'
#       
mix_part['To']='        ,        @qq.com'
#    
subject='2020-5-21    '
mix_part['subject']=Header(subject,'utf-8')
#################################################################################################
#      ,             
"""
    :
        ,   plain      ,   utf-8    
"""
message_info='python      '
message=MIMEText(message_info,'plain','utf-8')
#                
mix_part.attach(message)
###############################################################################################
#          
#         ,     ,             
txt_path=r'C:\Users\Desktop\    .pdf'
txt_file = open(txt_path, 'rb').read()
txt = MIMEText(txt_file, 'base64', 'utf-8')
txt["Content-Type"] = 'application/octet-stream'
#          
txt.add_header('Content-Disposition', 'attachment', filename='    .pdf')
#                
mix_part.attach(txt)
####################################################################################
#           
#         ,     ,             
image_path=r'C:\Users\Desktop\images\test.png'
image_file = open(image_path, 'rb').read()
image = MIMEImage(image_file)
image.add_header('Content-ID', '<image1>')
#filename           
image["Content-Disposition"] = 'attachment; filename="test.png"'
#                
mix_part.attach(image)
###################################################################################################
try:
 """
 qq          ,    qq          ,
     163     ,       163         
 """
 # smtpObj=smtplib.SMTP('smtp.exmail.qq.com')
 #163          
 smtpObj = smtplib.SMTP('smtp.163.com')
 #  :  ,  
 smtpObj.login(sender,password)
 smtpObj.sendmail(sender,receivers,mix_part.as_string())
 smtpObj.quit()
 print('      ')
except smtplib.SMTPException:
 print('Error:      ')
ステップ3:コンピュータ設定のタイミングでメールを送信する
win+r運転ウィンドウを呼び出してtaskschd.mscを入力します。

基本的なタスクを作成して、ヒントに従って少しずつ進めばいいです。

自分の需要に応じて、私はここで一回を選んで、起動プログラムの未来時間を設定すればいいです。
在这里插入图片描述


プログラムまたはスクリプトの欄は変更する必要はありません。Pythonから始まるパスを指します。パラメータを追加する(オプション)とは、先ほど作成した自動メールプログラムのパスを指します。

完了をクリックしてください。
まとめは以下の通りです
(1)メール送信と受信メールボックス設定中のSMTPサービスを開く必要があり、承認コードを覚えておく必要があります。
(2)Pythonのプログラムは手順に従って一歩ずつ進めば大丈夫です。
(3)パソコンで自動運転プログラムを設定する場合は、設定の開始経路(オプション)とパラメータの追加(オプション)のパスに注意が必要です。
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。