Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save smileboywtu/45501b5a76365182c2fb7f19ef291162 to your computer and use it in GitHub Desktop.
Save smileboywtu/45501b5a76365182c2fb7f19ef291162 to your computer and use it in GitHub Desktop.
Python & Email,附上用 Python 发送 QQ 邮箱邮件的代码
import smtplib
from getpass import getpass
def prompt(prompt):
return input(prompt).strip()
fromaddr = prompt("From: ")
toaddrs = prompt("To: ").split()
subject = prompt("Subject: ")
print("Enter message, end with ^D (Unix) or ^Z (Windows):")
# Add the From: To: and Subject: headers at the start!
msg = ("From: %s\r\nTo: %s\r\nSubject: %s\r\n\r\n"
% (fromaddr, ", ".join(toaddrs), subject))
while True:
try:
line = input()
except EOFError:
break
if not line:
break
msg = msg + line
print("Message length is", len(msg))
server = smtplib.SMTP_SSL('smtp.qq.com')
# 如果是其他的服务,只需要更改 host 为对应地址,port 对对应端口即可
# server = smtplib.SMTP_SSL(host='smtp.qq.com', port=465)
server.set_debuglevel(1) # 开启调试,会打印调试信息
print("--- Need Authentication ---")
username = prompt("Username: ")
password = getpass("Password: ")
server.login(username, password)
server.sendmail(fromaddr, toaddrs, msg)
server.quit()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment