通过Raspberry Pi发送电子邮件Hotmail帐户

时间:2013-12-23 23:27:05

标签: python email raspberry-pi raspbian

我只是在Raspbian OS下用Python编写这段代码:

import smtplib

from = '****@hotmail.de'
to   = '****@hotmail.de'
msg  = 'Testmail'

usr = '****@hotmail.de'
psw = '****'

server = smtplib.SMTP('smtp.live.de',25)
server.login (usr,psw)
server.sendmail (from, to, msg)
server.quit()

获取以下错误消息:

Traceback (most recent call last):
  File "ail.py", line 1, in <module>
  import smtplib
  File "/usr/lib/python2.7/smtplib.py", line 46, in <module>
  import email.utils
  File "/home/pi/email.py", line 6, in <module>
  smtp =smtplib.SMTP('smtp.live.com',25)
AttributeError: 'module' object has no attribute 'SMTP'

我的错是什么?有人可以帮帮我吗?

此致

1 个答案:

答案 0 :(得分:0)

您的问题是您将脚本命名为email.py,或者可能是其早期版本。这意味着它会影响标准库email模块/包。因此,当smtplib尝试import emailimport email.utils时,它会获取您的代码而不是它想要的stdlib代码。

解决方案是将您的脚本重命名为不匹配stdlib modules and packages中的任何一个(或者至少不是您直接或间接使用的任何一个)。

如果您已将其重命名为ail.py(因为回溯似乎暗示)并且仍然会导致问题,请确保删除原始email.py和任何.pyc / .pyo文件同名。只要它们位于当前工作目录(或sys.path上的其他位置),它们仍然可以干扰stdlib。