[Python]使用smtplib类库发

发布时间:2019-09-12 07:55:51编辑:auto阅读(1576)

     

    可以先去Mailgun注册一个免费的programmable mail servers,免费的有每天200封邮件的限制。

    Mailgun is a set of powerful APIs that allow you to send, receive, track and store email effortlessly.

    Mailgun提供一系列强大的API,使得你可以毫无费力的实现邮件的发送,接收,跟踪和存储。

     

    也可以不注册,直接使用自己的邮箱服务提供商的SMTP进行测试。

    下面是mail.py的全部代码

    1. #!/usr/bin/env python 
    2. #coding:utf-8 
    3.  
    4. import sys 
    5. import smtplib 
    6. from email.MIMEMultipart import MIMEMultipart 
    7. from email.MIMEText import MIMEText 
    8.  
    9. MAIL_HOST='smtp.mailgun.org' 
    10. MAIL_ADMIN='user1@z42.mailgun.org' 
    11. MAIL_PORT=587 
    12. MAIL_USER='postmaster@z42.mailgun.org' 
    13. MAIL_PASSWORD='*******' 
    14.  
    15. def main(): 
    16.   if len(sys.argv)<4
    17.     raise Exception('argument number must be 3'
    18.   to=sys.argv[1
    19.   title=sys.argv[2
    20.   content=sys.argv[3
    21.    
    22.   smtp=smtplib.SMTP(MAIL_HOST,MAIL_PORT) 
    23.   smtp.login(MAIL_USER,MAIL_PASSWORD) 
    24.  
    25.   msg=MIMEMultipart() 
    26.   msg['From']=MAIL_ADMIN 
    27.   msg['To']=to 
    28.   msg['Subject']=title 
    29.   msg.attach(MIMEText(content))  
    30.  
    31.   print(msg) 
    32.   smtp.sendmail(MAIL_ADMIN,to,msg.as_string()) 
    33.   smtp.quit() 
    34.  
    35. if __name__=='__main__'
    36.   main() 

     

    使用下面的命令行发送邮件

     

    1. >python mail.py jorden008@163.com "hi, it's me" "hello, andy. This is mail content."

    关于smtplib的使用,大家可以参考

    http://docs.python.org/library/smtplib.html

关键字