Email - 邮件接收

#-*- 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...\n' % host)

# 登陆POP3邮箱
p = poplib.POP3(host)
try:
    log('Loging on...')
    p.user(user)
    p.pass_(password)
    log(' success\n')
except poplib.error_proto, e:
    print 'Login failed:', e
    sys.exit(1)


log('Scanning InBox...')
mblist = p.list()[1]
log("%d messages.\n " % 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('\n'.join(lines))
    
    destfd.write(msg.as_string(unixfrom=1))
    
    destfd.write('\n')
    
    dellist.append(number)
    log('done.\n')

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.\n' % counter)
else:
    log('No messages present to download.\n')

log('Closing connection...')
p.quit()
log('done.\n')    
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值