执行msmtp ...@qq.com输入内容后无法使用ctrl+d,并且无法生成生成错误日志
配置如下图
可以用Python 3来发送,我用的Python 3.6
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from email import encoders
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr
import smtplib
# 自己的邮箱地址
from_addr=""
# 邮箱密码(有的邮箱可能是使用的授权码)
password=""
# 发送给谁
to_addr=""
# 邮箱的smtp服务器地址
smtp_server="smtp.qq.com"
def _format_addr(s):
name, addr = parseaddr(s)
return formataddr((Header(name, 'utf-8').encode(), addr))
msg = MIMEText('hello, send by Python...', 'plain', 'utf-8')
msg['From'] = _format_addr('Python爱好者 <%s>' % from_addr)
msg['To'] = _format_addr('管理员 <%s>' % to_addr)
msg['Subject'] = Header('来自SMTP的问候……', 'utf-8').encode()
server = smtplib.SMTP(smtp_server, 587)
# 因为QQ邮箱使用的是SSL,所以必须使用下面这行代码.
server.starttls()
server.set_debuglevel(1)
server.login(from_addr, password)
server.sendmail(from_addr, [to_addr], msg.as_string())
server.quit()
QQ邮箱用SMTP不是用的登录密码,是用的授权码,你在QQ邮箱->设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,生成一个授权码,然后试试能运行不.