No attribute 'SMTP', error when trying to send email in Python
Question:
I am trying to send an email in 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()
I understand that this is probably not the correct message format.
Anyways, I get an error:
C:.....>python email.py
Traceback (most recent call last):
File "email.py", line 1, in <module>
import smtplib
File "C:.....Pythonlibsmtplib.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'
I don’t quite understand what I am doing wrong here… Anything incorrect?
NOTE: All the periods are replacements for password/email/file paths/etc.
Answers:
Python already has an email
module. Your script’s name is email.py
, which is preventing smtplib
from importing the built-in email
module.
Rename your script to something other than email.py
and the problem will go away.
import smtplib
conn = smtplib.SMTP('imap.gmail.com',587)
conn.ehlo()
conn.starttls()
conn.login('[email protected]', 'your_password')
conn.sendmail('[email protected]','[email protected]','Subject: What you like? nn Reply Reply Reply')
conn.quit()
I am trying to send an email in 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()
I understand that this is probably not the correct message format.
Anyways, I get an error:
C:.....>python email.py
Traceback (most recent call last):
File "email.py", line 1, in <module>
import smtplib
File "C:.....Pythonlibsmtplib.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'
I don’t quite understand what I am doing wrong here… Anything incorrect?
NOTE: All the periods are replacements for password/email/file paths/etc.
Python already has an email
module. Your script’s name is email.py
, which is preventing smtplib
from importing the built-in email
module.
Rename your script to something other than email.py
and the problem will go away.
import smtplib
conn = smtplib.SMTP('imap.gmail.com',587)
conn.ehlo()
conn.starttls()
conn.login('[email protected]', 'your_password')
conn.sendmail('[email protected]','[email protected]','Subject: What you like? nn Reply Reply Reply')
conn.quit()