python 发邮件写例子

#! /usr/bin/env python 
from email import encoders
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr
import smtplib
import sys
from email.mime.text import MIMEText
mailto_list=['km_moon11@sohu.com']          
mail_host="smtp.sohu.com"  #邮件服务器的域名 如:smtp.sohu.com pop3.sohu.com等
mail_post="25"         
mail_user="xxx"            #邮件服务用户名              
mail_pass="xxx"         #和邮件服务登录的密码                   
mail_postfix="sohu.com"                    
def send_mail(to_list,sub,content):
    me="hello"+"<"+mail_user+"@"+mail_postfix+">"
    msg = MIMEText(content,_subtype='plain')
    msg['Subject'] = sub
    msg['From'] = me
    msg['To'] = ";".join(to_list)               
    try:
        server = smtplib.SMTP()
        server.connect(mail_host,mail_post)                           
        server.login(mail_user,mail_pass)              
        server.sendmail(me, to_list, msg.as_string())
        server.close()
        return True
    except Exception, e:
        print str(e)
        return False
#for i in range(5):                            
    #if send_mail(mailto_list,"hello","haha!"): 
        #print "done!"
    #else:
        #print "failed!"
if __name__=="__main__":
    to_list = sys.argv[1]
    sub = sys.argv[2]
    content = sys.argv[3]
    #print to_list
    #print sub
    #print content
    send_mail(to_list,sub,content)

---------------------------------------------------------------------------------------------------------------------------------

运行命令:python sendmail.py km_moon11@sohu.com hi hello

通过cmd传三个参数

python程序外部参数通过sys.argv传入,sys.argv为list。
sys.argv第一项为程序文件的名称,后面的依次为参数列表

参数之间用空格隔开

sys.argv这个参数就好比我们java中的main函数中经常看到的argv[]

-----------------------------------------------------------------------------------------------

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用Python内置的smtplib库来发送邮件。首先需要连接到SMTP服务器,然后使用SMTP对象的sendmail方法发送邮件。以下是一个简单的Python代码示例: ```python import smtplib from email.mime.text import MIMEText # 邮件内容 msg = MIMEText('这是一封测试邮件', 'plain', 'utf-8') msg['From'] = 'sender@example.com' msg['To'] = 'recipient@example.com' msg['Subject'] = '测试邮件' # 发送邮件 smtp_server = 'smtp.example.com' smtp_port = 25 smtp_username = 'sender@example.com' smtp_password = 'password' smtp_conn = smtplib.SMTP(smtp_server, smtp_port) smtp_conn.login(smtp_username, smtp_password) smtp_conn.sendmail(smtp_username, [msg['To']], msg.as_string()) smtp_conn.quit() ``` 需要替换的内容包括:邮件内容、发件人邮箱、收件人邮箱、SMTP服务器地址、SMTP服务器端口、发件人邮箱用户名、发件人邮箱密码。 ### 回答2: 使用Python发送电子邮件需要安装 `smtplib` 和 `email` 库。 首先,通过 `smtplib` 建立与邮件服务器的连接。例子中以SMTP服务器为例: ``` import smtplib # 建立与SMTP服务器的连接 server = smtplib.SMTP('服务器地址', 端口号) # 例如:server = smtplib.SMTP('smtp.gmail.com', 587) - 使用Gmail的SMTP服务器 # 开启TLS加密(可选) server.starttls() # 登录到邮箱账户 server.login("发件邮箱地址", "密码") ``` 接下来,使用 `email` 模块创建邮件。例子中以文本邮件为例: ``` from email.mime.text import MIMEText # 创建邮件 msg = MIMEText("邮件正文内容") msg['Subject'] = "邮件主题" msg['From'] = "发件人邮箱地址" msg['To'] = "收件人邮箱地址" ``` 在创建邮件时,可以根据需求选择其他邮件类型,比如带附件的邮件(使用 `email.mime.multipart.MIMEMultipart`)或带HTML内容的邮件(使用 `email.mime.text.MIMEText`,并设置 `msg.ishtml(True)`)等。 最后,通过SMTP服务器发送邮件: ``` # 发送邮件 server.sendmail("发件人邮箱地址", "收件人邮箱地址", msg.as_string()) # 关闭与SMTP服务器的连接 server.quit() ``` 以上是使用Python发送邮件的基础流程。具体实现还需要填充具体的服务器地址、端口号、发件人、收件人等信息。 ### 回答3: 使用Python发送电子邮件需要使用到SMTP(简单邮件传输协议)库进行操作。以下是使用Python发送邮件的步骤: 1. 导入所需的库 首先,导入smtplib库,该库是Python内置的用于发送邮件的标准库。同时,还需要导入email库来构建邮件内容。 ```python import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText ``` 2. 建立连接 使用smtp对象连接到SMTP服务器,并进行身份验证。需要提供SMTP服务器地址、端口号以及登录信息(发件人邮箱和密码)。 ```python smtp_server = "smtp.example.com" smtp_port = 587 sender_email = "sender@example.com" password = "password" server = smtplib.SMTP(smtp_server, smtp_port) server.starttls() server.login(sender_email, password) ``` 3. 创建邮件内容 使用MIMEMultipart对象创建一个邮件实例,并设置发件人、收件人、主题等信息。可以使用MIMEText对象来添加邮件正文内容。 ```python message = MIMEMultipart() message["From"] = sender_email message["To"] = "receiver@example.com" message["Subject"] = "邮件主题" text = "邮件正文" message.attach(MIMEText(text, "plain")) ``` 4. 添加附件(可选) 如果需要添加附件,可以使用MIMEBase对象创建一个附件实例,并将其附加到邮件实例中。 ```python from email.mime.base import MIMEBase from email import encoders attachment = open("file.txt", "rb") part = MIMEBase("application", "octet-stream") part.set_payload(attachment.read()) encoders.encode_base64(part) part.add_header("Content-Disposition", "attachment", filename="file.txt") message.attach(part) ``` 5. 发送邮件 调用sendmail方法发送邮件。需要提供发件人、收件人和邮件内容。 ```python server.sendmail(sender_email, "receiver@example.com", message.as_string()) ``` 6. 关闭连接 发送完毕后,调用quit方法关闭与SMTP服务器的连接。 ```python server.quit() ``` 以上是使用Python发送邮件的基本步骤,根据需要可以进行相应的调整和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值