Email-メール受信

1922 ワード

#-*- coding: utf-8 -*-
#!/user/bin/env python
import email
import poplib
import sys

def log(text):
    sys.stdout.write(text)
    sys.stdout.flush()

host = 'XXXXXXXXXXX'
user = 'XXXXXXXXXXXX'
password = 'XXXXXXXX'

#        
dest = 'mail.txt'
destfd = open(dest, 'at')

log('Connecting to %s...
' % host) # POP3 p = poplib.POP3(host) try: log('Loging on...') p.user(user) p.pass_(password) log(' success
') except poplib.error_proto, e: print 'Login failed:', e sys.exit(1) log('Scanning InBox...') mblist = p.list()[1] log("%d messages.
" % len(mblist)) dellist = [] # # destfd for item in mblist: number, octets = item.split(' ') log ('Downloading message %s(%s bytes)...' % (number, octets)) lines = p.retr(number)[1] msg = email.message_from_string('
'.join(lines)) destfd.write(msg.as_string(unixfrom=1)) destfd.write('
') dellist.append(number) log('done.
') destfd.close() # counter = 0 for number in dellist: counter += 1 log ('Deleting message %d od %d\r' % (counter, len(dellist))) p.dele(number) if counter > 0: log('Successfully deleteed %d message from server.
' % counter) else: log('No messages present to download.
') log('Closing connection...') p.quit() log('done.
')