import smtplib |
02 |
fromaddr = 'seue...@gmail.com' |
03 |
toaddrs = 'destin...@gmail.com' |
04 |
msg = 'Mensagem enviada pelo Python utilizando Gmail' |
05 |
06 |
#provide gmail user name and password |
07 |
username = 'seu email' |
08 |
password = 'sua senha' |
09 |
10 |
# functions to send an email |
11 |
server = smtplib.SMTP('smtp.gmail.com:587') |
12 |
server.ehlo() |
13 |
server.starttls() |
14 |
server.ehlo() |
15 |
server.login(username,password) |
16 |
server.sendmail(fromaddr, toaddrs, msg) |
17 |
server.quit() |
smtplib doesn't include any headers automatically, but just sends the text that you give it as a raw message
message = 'From: m...@example.com\nMessage-ID:<base64>\nSubject: [PGS]: Results\n\nBlaBlaBla'
You can utilize the email.message.Message class, and use it to generate mime headers, includingfrom:, to: and subject. Send the as_string() result via SMTP.
>>> from email import message
>>> m1=message.Message()
>>> m1.add_header('from','m...@no.where')
>>> m1.add_header('to','mys...@some.where')
>>> m1.add_header('subject','test')
>>>m1.add_header('Message-ID',<base64ID>)
>>> m1.set_payload('test\n')
>>> m1.as_string()
'from: m...@no.where\nto: mys...@some.where\nsubject: test\n\ntest\nMessage-ID:<base64ID>'
>>>