Python | Reciba una alerta por correo electrónico cuando el sitio web esté activo

En este artículo, vamos a aprender cómo verificar si algún sitio web se está ejecutando o no funciona con un simple script de Python. Usaremos la biblioteca de requests de Python para enviar la solicitud ‘get’ y la biblioteca ‘smtplib’ para enviar notificaciones por correo electrónico cuando el sitio web esté activo. Esto significa que no necesitamos verificar cada vez. Nuestro programa Python nos notificará por correo electrónico cuando el sitio esté funcionando.
Este script simplemente verifica si un sitio web está activo o no. Si está activo, enviará un correo electrónico sobre esto, si está inactivo, seguirá comprobando y cuando el sitio esté activo, enviará un correo electrónico y finalizará.
Instalación: 
vaya al símbolo del sistema y escriba este comando: 
 

pip install requests, smtplib

A continuación se muestran los pasos: 

  • Coloque todo el código en un bloque de prueba para manejar la excepción.
  • Enviar una solicitud de obtención al sitio web que queremos.
  • Si el sitio web no se está ejecutando, entonces no recibimos una respuesta, lo que genera una excepción.
  • Luego, en el bloque excepto, simplemente imprimimos que el sitio web no se está ejecutando.
  • Si no se lanza ninguna excepción, significa que recibimos la respuesta y el sitio web se está ejecutando.
  • Ahora cree una sesión SMTP para iniciar sesión a través de Gmail.
  • Ingrese su ID y contraseña de Gmail correctos.
  • Envía el correo y listo.

A continuación se muestra la implementación: 

Python3

import smtplib, requests, time
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
 
while(1):
    try:
        # Replace the url for your desired website
        url = "https://www.facebook.com/"
 
        # Send the get request to the website
        r = requests.get(url)
 
        # creates SMTP session
        s = smtplib.SMTP("smtp.gmail.com", 587)
 
        # start TLS for security
        s.starttls()
 
        # Authentication
        s.login("sender_gmail_id", "sender_password")
 
        # Instance of MIMEMultipart
        msg = MIMEMultipart("alternative")
 
        # Write the subject
        msg["Subject"]= url + " is working now."
 
        msg["From"]="sender_gmail_id"
        msg["To"]="receiver_gmail_id"
 
        # Plain text body of the mail
        text = url + " is running now."
 
        # Attach the Plain body with the msg instance
        msg.attach(MIMEText(text, "plain"))
 
        # HTML body of the mail
        html ="<h2>Your site is running now.</h2><br/><a href ='"
             + url + "'>Click here to visit.</a>"
 
        # Attach the HTML body with the msg instance
        msg.attach(MIMEText(html, "html"))
 
        # Sending the mail
        s.sendmail("sender_gmail_id", "receiver_gmail_id", msg.as_string())
        s.quit()
        print('sent')
        break
    except:
        print('site is down yet...')
        print('sleeping...')
 
        # Sleeping for 60 seconds. We can change this interval.
        time.sleep(60)
        print('Trying again')
        continue

Publicación traducida automáticamente

Artículo escrito por gjaiswal108 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 *