63 lines
1.8 KiB
Python
63 lines
1.8 KiB
Python
#!.env/bin/python
|
|
from __future__ import unicode_literals
|
|
from imapclient import IMAPClient
|
|
from datetime import date
|
|
import yaml
|
|
HOST="buran.htu.tuwien.ac.at"
|
|
USERNAME="andis"
|
|
PASSWORD="t4MJAvU2"
|
|
ssl=True
|
|
server=IMAPClient(HOST, use_uid=True, ssl=ssl)
|
|
server.login(USERNAME,PASSWORD)
|
|
|
|
select_info=server.select_folder('INBOX')
|
|
|
|
messages=server.search([u'SUBJECT', 'service',u'SINCE', date(2017,06,1)])
|
|
#pritn(select_info)
|
|
|
|
|
|
#response = server.fetch(messages, ['FLAGS', 'RFC822.SIZE', 'BODY', 'ENVELOPE','X-GM-THRID', 'X-GM-MSGID'])
|
|
#response = server.fetch(messages, ['ENVELOPE'])
|
|
|
|
#print(response)
|
|
#for msgid, data in response.iteritems():
|
|
# print(' ID %d: %d bytes, flags=%s, %s' % (msgid,
|
|
# data[b'RFC822.SIZE'],
|
|
# data[b'FLAGS'], data['ENVELOPE']))
|
|
#response = server.thread()
|
|
|
|
print "\n\n --------------------------------\n"
|
|
response= server.thread(criteria=[u'SUBJECT', 'service',u'SINCE', date(2017,04,1)])
|
|
print(response)
|
|
#resp=server.thread('X-GM')
|
|
#for msgid, data in response.iteritems():
|
|
# print(' ID %d: \t %s \t %s' % (msgid, data[b'X-GM-THRID'], data[b'X-GM-MSGID']))
|
|
print "\n---------------------\n"
|
|
print response[0], len(response[0])
|
|
|
|
|
|
def get_msg(mid):
|
|
print mid
|
|
sf=server.fetch([mid],['ENVELOPE'])
|
|
for msgid, data in sf.iteritems():
|
|
return {"msgid": msgid, "envelope": data[b'ENVELOPE']}
|
|
|
|
|
|
def get_msg_tuple(ids):
|
|
r=[]
|
|
for i in ids:
|
|
if type(i) is int:
|
|
r.append(get_msg(i))
|
|
elif type(i) is tuple:
|
|
r.append(get_msg_tuple(i))
|
|
return r
|
|
|
|
r=[]
|
|
for ids in response:
|
|
r.append(get_msg_tuple(ids))
|
|
|
|
print yaml.dump(r,default_flow_style=False)
|
|
file=open("envelopes.yaml","w")
|
|
file.write(yaml.dump(r,default_flow_style=False))
|
|
file.close()
|