Le contenu de cet article concerne l'analyse et la mise en œuvre (code) de l'envoi d'e-mails avec Python et le code d'autorisation d'e-mail 163. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. .
Contexte
J'ai écrit un script de pointage automatique il y a quelque temps, mais le script n'était pas assez parfait. J'avais besoin de savoir si l'horloge-. a réussi ou non, alors j'ai pensé à utiliser Python pour exécuter le code, puis à exécuter un morceau de code pour envoyer l'e-mail. Une fois les exigences claires, commencez à analyser et à écrire du code pour les mettre en œuvre.
Analyse
SMTP (Simple Mail Transfer Protocol), qui est un simple protocole de transfert de courrier. Il s'agit d'un ensemble de règles permettant de transmettre le courrier de l'adresse source à l'adresse. adresse de destination. Il contrôle la façon dont les lettres sont relayées.
smtplib de Python fournit un moyen très pratique d'envoyer des e-mails. Il encapsule simplement le protocole SMTP.
Implémentation du code
import smtplib from email.mime.text import MIMEText # 引入smtplib和MIMEText from time import sleep def sentemail(): host = 'smtp.163.com' # 设置发件服务器地址 port = 465 # 设置发件服务器端口号。注意,这里有SSL和非SSL两种形式,现在一般是SSL方式 sender = 'a419914150@163.com' # 设置发件邮箱,一定要自己注册的邮箱 pwd = 'SGJEKFBFK322' # 设置发件邮箱的授权码密码,根据163邮箱提示,登录第三方邮件客户端需要授权码 receiver = '419914150@qq.com' # 设置邮件接收人,可以是QQ邮箱 body = '<h1>你已成功打卡</h1><p>zhongfs</p>' # 设置邮件正文,这里是支持HTML的 msg = MIMEText(body, 'html') # 设置正文为符合邮件格式的HTML内容 msg['subject'] = '打卡通知' # 设置邮件标题 msg['from'] = sender # 设置发送人 msg['to'] = receiver # 设置接收人 try: s = smtplib.SMTP_SSL(host, port) # 注意!如果是使用SSL端口,这里就要改为SMTP_SSL s.login(sender, pwd) # 登陆邮箱 s.sendmail(sender, receiver, msg.as_string()) # 发送邮件! print ('Done.sent email success') except smtplib.SMTPException: print ('Error.sent email fail') if __name__ == '__main__': sentemail()
Statut d'exécution
Capture d'écran du programme en cours d'exécution :
Capture d'écran de l'e-mail reçu :
Résumé
Cet article présente brièvement comment utiliser Python pour envoyer via la boîte aux lettres 163 email avec le code ci-joint. Comme c’est relativement simple, je ne développerai pas davantage. Le code github a été téléchargé, le lien est le suivant :
https://github.com/rootzhongfengshan/python_practical/blob/master/SentMail/SentMail.py
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!