Python Desktop News Notifier en 20 líneas

Para comenzar con Desktop News Notifier, necesitamos dos bibliotecas: feedparser y notificar2. 
Dé el siguiente comando para instalar feedparser: 

sudo pip3 install feedparser

Para instalar notificar2 en su terminal:

sudo pip3 install notify2

Feedparser analizará el feed que obtendremos de la URL. Usaremos notificar2 para el propósito de notificación de escritorio. Además de estas dos bibliotecas, usaremos OS y time lib. Una vez que haya terminado con la instalación, importe ambas bibliotecas en el programa. Aquí, en este ejemplo, analicé las noticias de la BBC del Reino Unido, puede usar cualquier URL de analizador de fuentes de noticias. Echemos un vistazo al programa: 
 

Python

# Python program to illustrate
# desktop news notifier
import feedparser
import notify2
import os
import time
def parseFeed():
    f = feedparser.parse("http://feeds.bbci.co.uk/news/rss.xml")
    ICON_PATH = os.getcwd() + "/icon.ico"
    notify2.init('News Notify')
    for newsitem in f['items']:
        n = notify2.Notification(newsitem['title'],
                                 newsitem['summary'],
                                 icon=ICON_PATH
                                 )
    n.set_urgency(notify2.URGENCY_NORMAL)
    n.show()
    n.set_timeout(15000)
    time.sleep(1200)
     
if __name__ == '__main__':
    parseFeed()

Captura de pantalla de la ventana emergente de notificación de noticias

Python Desktop News Notifier in 20 lines

Explicación paso a paso del código: 

f = feedparser.parse("http://feeds.bbci.co.uk/news/rss.xml")
  • Aquí feedparser analizará los datos de noticias de la URL del feed. Los datos analizados estarán en forma de diccionario. 
ICON_PATH = os.getcwd() + "/icon.ico"
  • Si desea configurar cualquier ícono en la notificación, aquí estamos configurando la ruta del ícono. Esto es opcional.
notify2.init('News Notify')
  • Aquí estamos inicializando la notificación2 usando el método de inicio de la notificación2. Inicialice la conexión D-Bus. Se debe llamar antes de enviar notificaciones o recuperar información o capacidades del servidor.
 for newsitem in f['items']: 
        n = notify2.Notification(newsitem['title'], 
                                 newsitem['summary'], 
                                 icon=ICON_PATH 
                                 )
  • Bucle de los datos analizados para obtener la información relevante, como el título de la noticia, un breve resumen y la configuración del icono de notificación mediante el método de notificación de la biblioteca de notificaciones2.
n.set_urgency(notify2.URGENCY_NORMAL)
  • Establezca el nivel de urgencia en uno de URGENCY_LOW, URGENCY_NORMAL o URGENCY_CRITICAL
n.show()
  • Este método mostrará la notificación en el Escritorio
n.set_timeout(15000)
  • Configuración del tiempo para mantener la notificación en el escritorio (en milisegundos). He fijado aquí como 15 segundos. 
time.sleep(1200)
  • Esto generalmente mostrará la notificación de noticias cada 20 minutos. Puede configurar el tiempo según sus necesidades. Puede encontrar el código fuente completo que está alojado en GitHub

Este artículo es una contribución de Srce Cde . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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