我正在尝试用Python发送电子邮件:
import smtplib
fromaddr = '......................'
toaddrs = '......................'
msg = 'Spam email Test'
username = '.......'
password = '.......'
server = smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.login(username, password)
server.sendmail(fromaddr, toaddrs, msg)
server.quit()
我知道这可能不是正确的消息格式。
无论如何,我收到一个错误:
C:\.....>python email.py
Traceback (most recent call last):
File "email.py", line 1, in <module>
import smtplib
File "C:\.....\Python\lib\smtplib.py", line 47,
in <module>
import email.utils
File "C:\.....\email.py", line 15, in
<module>
server = smtplib.SMTP('smtp.gmail.com', 587)
AttributeError: 'module' object has no attribute 'SMTP'
我不太明白我在这里做错了什么......有什么不对的吗?
注意:所有句点都是密码/电子邮件/文件路径/等的替换。
答案 0 :(得分:69)
Python已经有email
module。您的脚本名称为email.py
,这阻止了smtplib
导入内置email
模块。
将脚本重命名为email.py
以外的其他内容,问题就会消失。
答案 1 :(得分:0)
import smtplib
conn = smtplib.SMTP('imap.gmail.com',587)
conn.ehlo()
conn.starttls()
conn.login('youremail@gmail.com', 'your_password')
conn.sendmail('from@gmail.com','to@gmail.com','Subject: What you like? \n\n Reply Reply Reply')
conn.quit()