¿Cómo puedo crear un script que me notifique por correo electrónico el cambio de la puntuación de la reseña de un hotel de booking.com? Gracias
Respuesta
¿Demasiados anuncios?Una forma de hacerlo es utilizar Bash para el scripting - viene preinstalado en tu Mac.
Puedes utilizar el programa "curl" para descargar la página web. También viene preinstalado en tu Mac.
El script debe guardar la página web actual en un archivo HTML, y más tarde cuando se ejecute de nuevo debe comparar el archivo antiguo con el contenido actual.
Puede utilizar el programa "mail" para que le envíe un correo electrónico cuando se haya detectado un cambio. También viene preinstalado en tu Mac.
Para ejecutar el script periódicamente para cambiar por cambios, puede utilizar el programa "cron". Este también viene preinstalado en tu Mac.
El script podría ser algo así:
#!/bin/bash
SITE="http://booking.com/link/to/my/hotel"
for (( ; ; )); do
mv new.html old.html 2> /dev/null
curl $SITE -L -s > new.html
DIFF_OUTPUT="$(diff new.html old.html)"
if [ "0" != "${#DIFF_OUTPUT}" ]; then
mail your@email.com -s "Something changed on hotel"
fi
done
Tendrá que suministrar su propia función de comparación en lugar del simple diff en el script aquí. Este script se activará con cualquier cambio, tendrás que limitarlo para que se active sólo con los cambios que te interesan. Una forma sencilla de hacerlo podría ser canalizar la salida de diff en grep, y buscar en grep "Puntuación" o cualquier texto que aparezca además de la puntuación que le interesa.
Añade el script a cron utilizando el comando "crontab".