Forked from binderclip/python-smtp-send-qq-mail.py
Created
February 17, 2017 14:15
-
-
Save bit-rocket/d72b2d22ddd51d125beb2b4a689be352 to your computer and use it in GitHub Desktop.
Python & Email,附上用 Python 发送 QQ 邮箱邮件的代码
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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