Python接收Gmail新邮件并发送到gtalk的方法

yipeiwu_com7年前Python基础

本文实例讲述了Python接收Gmail新邮件并发送到gtalk的方法。分享给大家供大家参考。具体实现方法如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import imaplib
import string, random
import StringIO, rfc822
import email
from google.appengine.api import xmpp
SERVER1 = "imap.gmail.com"
USER = "yeah"
PASSWORD = "ohmyga"
# connect to server
server = imaplib(SERVER1, 993)
# login
server.login(USER, PASSWORD)
server.select()
# list items on server
status, data = server.search(None, "(UNSEEN)")
mails = data[0].split()
if data[0] != '':
  print "has mails"
  user_address = 'wangnaide@gmail.com'
  for num in data[0].split():
    tpe, raw_msg = server.fetch(num, '(RFC822)')
    msg = email.message_from_string(raw_msg[0][1])
    #Subjects
    sbj, ecode = email.Header.decode_header(msg['subject'])[0]
    #from, sender
    frm = ''
    for fts, ecode in email.Header.decode_header(msg['from']):
      frm = frm + fts
    if xmpp.get_presence(user_address):
      xmpp.send_message(user_address, frm + ':' + sbj)
      server.store(num, '+FLAGS', '\\SEEN')
    #print frm + ":" + sbj
server.close()
server.logout()

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python实现实时监控文件的方法

在业务稳定性要求比较高的情况下,运维为能及时发现问题,有时需要对应用程序的日志进行实时分析,当符合某个条件时就立刻报警,而不是被动等待出问题后去解决,比如要监控nginx的$reques...

python使用sorted函数对列表进行排序的方法

本文实例讲述了python使用sorted函数对列表进行排序的方法。分享给大家供大家参考。具体如下: python提供了sorted函数用于对列表进行排序,并且可以按照正序或者倒序进行排...

python实践项目之监控当前联网状态详情

python实践项目之监控当前联网状态详情

介绍一个利用Python监控当前联网状态情况的python代码,它可以清楚地知道,你的电脑网络是否是链接成功或失败,通俗的说,就是查看你的电脑有木有网,代码如下: 调用系统网络诊断 监...

Windows下安装Scrapy

Windows下安装Scrapy

这几天正好有需求实现一个爬虫程序,想到爬虫程序立马就想到了python,python相关的爬虫资料好像也特别多。于是就决定用python来实现爬虫程序了,正好发现了python有一个开源...

Python全局变量与局部变量区别及用法分析

本文实例讲述了Python全局变量与局部变量区别及用法。分享给大家供大家参考,具体如下: 对于很多初学的同学,对全局和局部变量容易混淆,看看下面给大家的讲解相信都应该明白两者的区别了。...