from email.header import Header
from email.mime.text import MIMEText

import smtplib
from email.utils import parseaddr,formataddr



from_add = raw_input("From:")

password = raw_input('Password:')

to_add = raw_input('To:')

smtp_server = raw_input('smtp_server:')

def _format_add(s):
    name,addr = parseaddr(s)
    return formataddr((Header(name,'utf-8').encode(),addr))

msg = MIMEText('hello....','plain','utf-8') //转换成MIMEText对象
msg['From'] = _format_add('jokermarvelous <%s>' % from_add)  //发件人的名字以及发件地址
msg['To'] = _format_add('joker <%s>' % to_add) //收件人的名字以及收件地址
msg['subject'] = Header('laizi smtp de wenhou','utf-8').encode()  //发送信件的主题
server = smtplib.SMTP(smtp_server,25)

server.set_debuglevel(0)

server.login(from_add,password)

server.sendmail(from_add,[to_add],msg.as_string())

server.quit()

parseaddr()和formataddr()将输入的字符串名字与地址分开进行utf-8编码后再重组然后以文本方式发送给MTA