Monday, 27 May 2013

Python Code to show the sender and subject of incoming emails 

import imaplib
import email

while 1:
def extract_body(payload):
if isinstance(payload,str):
return payload
else:
return '\n'.join([extract_body(part.get_payload()) for part in payload])
     
try:
conn = imaplib.IMAP4_SSL("imap.gmail.com", 993)
conn.login("username","password")
conn.select()
typ, data = conn.search(None, 'UNSEEN')
except:
continue
try:
for num in data[0].split():
typ, msg_data = conn.fetch(num, '(RFC822)')
for response_part in msg_data:
if isinstance(response_part, tuple):
msg = email.message_from_string(response_part[1])
sender=msg['from']
subject=msg['subject']
br=set("<")
print('\n The sender is  :-')
sender=sender.split()
send=""
for i in sender:
if br.issubset(i):
break
else:
send=send+i
print(send)
print('\nsubject :-'+subject)
payload=msg.get_payload()
#body=extract_body(payload)
#print(body)
typ, response = conn.store(num, '+FLAGS', r'(\Seen)')

finally:
try:
conn.close()
except:
pass
conn.logout()

No comments:

Post a Comment

Drop in your suggestions or your queries