====== Changedetection.io ====== Aplicación web para monitorizar y notificar cambios en páginas o sitios web. * [[https://changedetection.io/|Web]] * [[https://github.com/dgtlmoon/changedetection.io|Repositorio de código]] {{ https://raw.githubusercontent.com/dgtlmoon/changedetection.io/master/docs/screenshot.png |}} ===== Casos de uso ===== * Cambios en los precios de productos y servicios * Notificaciones de productos agotados y de reposición de stock * Monitorear y rastrear cambios en archivos PDF; saber cuándo un PDF tiene modificaciones de texto * Actualizaciones de entidades gubernamentales (los cambios suelen publicarse solo en sus sitios web) * Nuevos lanzamientos de software y avisos de seguridad, incluso si no estás en sus listas de correo * Alertas de reposición en Discogs y monitoreo de stock * Cambios en listados de sitios de alquiler y venta de inmuebles * Noticias de universidades/organizaciones publicadas en sus sitios web * Detectar y monitorear cambios en respuestas de APIs JSON * Monitoreo y alertas automatizadas para APIs JSON * Modificaciones en documentos legales y otros archivos * Activar llamadas a APIs mediante notificaciones cuando aparece texto específico en un sitio web * Integrar APIs usando filtros JSON y notificaciones basadas en JSON * Crear feeds RSS a partir de cambios en contenido web * Alertas cuando ciertas palabras clave aparecen en búsquedas de Twitter * Búsqueda proactiva de empleos: notificaciones al actualizarse páginas de carrera de empresas o portales con tus palabras clave. * Monitoreo de alteraciones no autorizadas en sitios web (defacement) ===== Instalación ===== ==== Docker ==== Ejemplo de fichero ''docker-compose.yml'' para usar con [[informatica:sistemas_operativos:virtualizacion:docker:docker_compose|Docker Compose]]: --- version: "2.1" services: changedetection: image: lscr.io/linuxserver/changedetection.io:latest container_name: changedetection environment: - PUID=1000 - PGID=1000 - TZ=Europe/Madrid - BASE_URL= #optional volumes: - ./config:/config ports: - 5000:5000 restart: unless-stopped browser-chrome: hostname: browser-chrome image: selenium/standalone-chrome-debug:3.141.59 volumes: # Workaround to avoid the browser crashing inside a docker container # See https://github.com/SeleniumHQ/docker-selenium#quick-start - /dev/shm:/dev/shm restart: unless-stopped El segundo servicio (''browser-chrome'') es para añadir un navegador para que sea el que haga las peticiones en páginas que usan JavaScript para mostrar el contenido (el sistema básico no ejecuta nada de JavaScript) ===== Configuración ===== ==== Protección con contraseña ==== Por defecto, la instalación de Changedetection.io es accesible a cualquiera. Si no queremos esto, podemos establecer una contraseña desde //SETTINGS// -> //General// -> **Password**. ==== Sitios dinámicos que usan JavaScript ==== Para las webs cuyo contenido se genera con código JavaScript, el sistema básico de peticiones (//Basic fast Plaintext/HTTP Client//) no funciona, así que lo cambiamos para que emplee el //driver// de Chrome (un navegador web): Vamos a //SETTINGS// -> //Fetching// -> **Playwright Chromium/Javascript via 'ws://sockpuppetbrowser:3000'** ===== Recursos =====