通过 google smtp 在 python 中发送电子邮件
send an email in python through google smtp
好吧,我一直在尝试使用 smtplib 模块通过 python3 发送电子邮件。这是我的代码。我遗漏了可用于识别我身份的信息,例如凭据。
import smtplib
FROM = 'me@gmail.com'
TO = ["receiver@gmail.com"]
SUBJECT = "Hello!"
TEXT = "This message was sent with Python's smtplib."
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
username = 'me@gmail.com'
password = 'password'
server = smtplib.SMTP('smtp.gmail.com:587')
server.ehlo()
server.starttls()
server.login(username,password)
server.sendmail(FROM, TO, message)
server.quit()
不过有一个小问题,我第一次尝试 运行 我的脚本时出现了以下错误。
server = smtplib.SMTP('smtp.gmail.com:587')
AttributeError: module 'smtplib' has no attribute 'SMTP'
所以我想,"Well this is weird, I'll try another setup." 事情是这样的,现在即使完全导入 smtplib 也会从另一个没有引用它的文件中给出错误,如图所示。
Traceback (most recent call last):
File "C:\Users\Tatatat0\Documents\python\business.py", line 6, in <module>
import smtplib
File "C:\Users\Tatatat0\AppData\Local\Programs\Python\Python35\lib\smtplib.py",
import email.utils
File "C:\Users\Tatatat0\Documents\python\email.py", line 47, in <module>
server = smtplib.SMTP('smtp.gmail.com:587')
AttributeError: module 'smtplib' has no attribute 'SMTP'
知道会发生什么吗and/or 我如何通过 python 正确使用 smtp?
问题是您的代码位于名为 email.py
的 Python 脚本文件中。
当您在 business.py
中导入 smtplib
时,smtplib
尝试导入 email.utils
,但它访问的是 您的 版本email.py
,而不是标准库中的那个。
修复它的简单方法是重命名脚本。您还需要删除 email.pyc
文件,因为即使 .py
文件已删除,该文件仍将继续导入。
好吧,我一直在尝试使用 smtplib 模块通过 python3 发送电子邮件。这是我的代码。我遗漏了可用于识别我身份的信息,例如凭据。
import smtplib
FROM = 'me@gmail.com'
TO = ["receiver@gmail.com"]
SUBJECT = "Hello!"
TEXT = "This message was sent with Python's smtplib."
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
username = 'me@gmail.com'
password = 'password'
server = smtplib.SMTP('smtp.gmail.com:587')
server.ehlo()
server.starttls()
server.login(username,password)
server.sendmail(FROM, TO, message)
server.quit()
不过有一个小问题,我第一次尝试 运行 我的脚本时出现了以下错误。
server = smtplib.SMTP('smtp.gmail.com:587')
AttributeError: module 'smtplib' has no attribute 'SMTP'
所以我想,"Well this is weird, I'll try another setup." 事情是这样的,现在即使完全导入 smtplib 也会从另一个没有引用它的文件中给出错误,如图所示。
Traceback (most recent call last):
File "C:\Users\Tatatat0\Documents\python\business.py", line 6, in <module>
import smtplib
File "C:\Users\Tatatat0\AppData\Local\Programs\Python\Python35\lib\smtplib.py",
import email.utils
File "C:\Users\Tatatat0\Documents\python\email.py", line 47, in <module>
server = smtplib.SMTP('smtp.gmail.com:587')
AttributeError: module 'smtplib' has no attribute 'SMTP'
知道会发生什么吗and/or 我如何通过 python 正确使用 smtp?
问题是您的代码位于名为 email.py
的 Python 脚本文件中。
当您在 business.py
中导入 smtplib
时,smtplib
尝试导入 email.utils
,但它访问的是 您的 版本email.py
,而不是标准库中的那个。
修复它的简单方法是重命名脚本。您还需要删除 email.pyc
文件,因为即使 .py
文件已删除,该文件仍将继续导入。