Saltar al contenido

Verificar el recuento de mensajes de Gmail no leídos con Python

Solución:

import imaplib
obj = imaplib.IMAP4_SSL('imap.gmail.com','993')
obj.login('username','password')
obj.select()
obj.search(None,'UnSeen')

Te aconsejo que utilices el feed atom de Gmail

Es tan simple como esto:

import urllib

url="https://mail.google.com/mail/feed/atom/"
opener = urllib.FancyURLopener()
f = opener.open(url)
feed = f.read()

A continuación, puede utilizar la función de análisis de feeds en este bonito artículo: Compruebe Gmail de forma pitónica

Bueno, voy a seguir adelante y deletrear una solución de imaplib como sugirió Cletus. No veo por qué la gente siente la necesidad de usar gmail.py o Atom para esto. Este tipo de cosas es para lo que se diseñó IMAP. Gmail.py es particularmente atroz, ya que en realidad analiza el HTML de Gmail. Eso puede ser necesario para algunas cosas, ¡pero no para obtener un recuento de mensajes!

import imaplib, re
conn = imaplib.IMAP4_SSL("imap.gmail.com", 993)
conn.login(username, password)
unreadCount = re.search("UNSEEN (d+)", conn.status("INBOX", "(UNSEEN)")[1][0]).group(1)

La compilación previa de la expresión regular puede mejorar ligeramente el rendimiento.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *