In questa guida scopriremo come sfruttare ChangeDetection.io per rilevare cambiamenti nelle pagine web di uno o più siti, ricevendo una notifica. Sfrutteremo un dispositivo come il Raspberry Pi per farlo, ma andrà bene un qualunque dispositivo equivalente, incluso un VPS economico.
ChangeDetction.io è un servizio progettato per rilevare se sono state apportate modifiche a un determinato sito web, semplicemente effettuando periodicamente delle richieste a quest’ultimo e controllando se ci sono cambiamenti rispetto all’ultimo controllo effettuato. Conseguentemente, in qualsiasi momento si noti una modifica, il servizio può inviare una notifica con le info su ciò che risulta cambiato.
Un dispositivo come il Raspberry Pi può essere un’ottima scelta per questo tipo di operazioni, poiché ha un basso consumo ed ha sufficiente potenza di calcolo per eseguire il tool in questione. Alternativamente, anche un VPS economico può essere sfruttato per questo tipo di operazioni.
Requisiti
Prima di elencare i requisiti, una nota importante: se hai intenzione di utilizzare ChangeDetection.io su Raspberry Pi, assicurati di star eseguendo la versione a 64 bit di Raspberry Pi OS, in particolar modo se hai un modello dal Raspberry Pi 3 in poi. In questo modo, avrai la possibilità di rilevare modifiche anche sulle pagine che utilizzano JavaScript, poiché sebbene sia possibile utilizzare questo tool sulla versione a 32 bit, il supporto a JavaScript per le pagine web non è disponibile.
- Raspberry Pi 2 (come minimo, dal 3 in poi con OS a 64 bit è consigliato) o alternativamente un VPS con 1 vCPU e 1 GB di RAM.
- Almeno 4 GB di spazio libero su disco.
- Docker installato sul sistema.
Se non sai come installare Docker, puoi seguire la nostra guida in merito.
Installazione di ChangeDetection.io
Per installare questo tool, sfrutteremo Docker, conseguentemente come detto poc’anzi, ti invitiamo ad installarlo sul tuo sistema GNU/Linux se già non l’avessi fatto.
Una volta che Docker è stato installato, tutto ciò che dobbiamo fare è scrivere il file di Docker Compose per configurare ChangeDetection.io ed eseguirlo.
1. Creiamo la directory nella quale andremo ad inserire il file di Docker Compose, con il comando seguente:
sudo mkdir -p /opt/stacks/changedetection
2. Entriamo nella directory appena creata:
cd /opt/stacks/changedetection
3. Iniziamo a predisporre il file di Docker Compose, sfruttando l’editor di testo nano:
sudo nano compose.yaml
4. All’interno di questo file, in base al sistema operativo che stiamo eseguendo (64 bit o 32 bit) copia-incolleremo il relativo blocco che trovate di seguito.
L’unica differenza tra questi due blocchi di codice è che non possiamo eseguire il browser Chrome su Raspberry Pi a 32 bit.
Se stai seguendo questo tutorial per installare questo tool su un VPS o una qualsiasi macchina con architettura x86_64, puoi tranquillamente copia-incollare la versione per Raspberry Pi OS a 64 bit.
compose.yaml per Raspberry Pi OS 64-bit o per VPS / architettura x84_64 (amd64)
services:
changedetection:
image: ghcr.io/dgtlmoon/changedetection.io
container_name: changedetection
hostname: changedetection
environment:
- PLAYWRIGHT_DRIVER_URL=ws://playwright-chrome:3000
volumes:
- changedetection-data:/datastore
ports:
- 5000:5000
restart: unless-stopped
playwright-chrome:
hostname: playwright-chrome
image: dgtlmoon/sockpuppetbrowser:latest
cap_add:
- SYS_ADMIN
restart: unless-stopped
environment:
- SCREEN_WIDTH=1920
- SCREEN_HEIGHT=1024
- SCREEN_DEPTH=16
- MAX_CONCURRENT_CHROME_PROCESSES=10
volumes:
changedetection-data:
Compose.yaml per Raspberry Pi OS 32-bit
services:
changedetection:
image: ghcr.io/dgtlmoon/changedetection.io
container_name: changedetection
hostname: changedetection
volumes:
- changedetection-data:/datastore
ports:
- 5000:5000
restart: unless-stopped
volumes:
changedetection-data:
5. Una volta copia-incollato il blocco di codice corretto per il tuo sistema, salviamo e usciamo premendo CTRL + X, seguito da Y, e infine il tasto ENTER.
6. Proviamo quindi ad avviare ChangeDetection.io sul nostro sistema eseguendo il seguente comando all’interno del terminale:
docker compose up -d
Accesso all’interfaccia web di ChangeDetection.io
Ora che abbiamo installato il software ChangeDetection.io sul nostro sistema, possiamo finalmente accedere alla sua interfaccia web.
1. È possibile accedere all’interfaccia web recuperando l’indirizzo IP del dispositivo su cui abbiamo installato il tool e collegandosi alla porta 5000.
Per ottenere l’indirizzo IP, puoi sfruttare il seguente comando:
hostname -I
2. Una volta recuperato l’indirizzo IP del tuo dispositivo, collegati sulla porta 5000 con il tuo browser web preferito:
http://<INDIRIZZO-IP>:5000
Una volta connesso, dovrebbe comparirti immediatamente l’interfaccia di questo tool, dalla quale potrai subito inserire un URL da monitorare. Non entreremo nel merito di come configurare questi aspetti del software e ti invitiamo a dare un’occhiata alla pagina con i Tutorial che spiegano, nel dettaglio, come monitorare diverse tipologie di siti web.
Tra le altre cose, ti segnaliamo anche l’esistenza di un’estensione per Google Chrome che si integra con ChangeDetection.io e che puoi sfruttare per configurare al volo il monitoring di una pagina web.
Aggiornamento di ChangeDetection.io all’ultima versione
Dal momento che stiamo usando Docker per eseguire questo software, possiamo aggiornarlo utilizzando alcuni semplici comandi.
1. Il primo passo è quello di passare alla directory in cui abbiamo scritto il file di Docker Compose per ChangeDetection.io:
cd /opt/stacks/changedetection
2. Dopodiché basterà far eseguire a Docker una pull, per recuperare le immagini docker aggiornate:
docker compose pull
3. E una volta scaricate le ultime immagini disponibili, far effettuare una sostituzione dei container Docker in esecuzione, con il comando:
docker compose up -d
È tutto. Speriamo che questa guida ti sia stata d’aiuto.
Questo software consente di verificare facilmente se sono state effettuate modifiche a una pagina web e quindi può rivelarsi molto utile per verificare se un prodotto è nuovamente disponibile, ad esempio, su un e-commerce.
Non esitare a lasciare un commento se hai riscontrato problemi durante l’installazione, oppure sfrutta le nostre sezioni “Domande & Richieste” o “Forum” per richiedere supporto.