Aller au contenu
geekus
SpécimenSelf-hosted·5 min de lecture

changedetection.io : surveiller une page web et ses prix

changedetection.io te prévient quand une page web change, sans que tu la recharges. Alertes Discord, Email, Slack, Telegram ou Webhook. Un LLM peut résumer le changement, y compris en local avec Ollama.

Voir le dépôt ↗
github.com/dgtlmoon/changedetection.io
Capture de la page de changedetection.io
Sommaire11 parties

changedetection.io est un outil open source, écrit en Python, qui surveille des pages web et envoie une alerte quand leur contenu change. Il suit aussi les prix, les retours en stock, les fichiers PDF et les réponses d’API JSON. Un modèle de langage peut, en option, résumer le changement en une phrase.

En bref

  • Surveille une page web et alerte à chaque changement détecté
  • Suit les prix et les retours en stock, avec un graphique dans le temps
  • Notifications par Discord, Email, Slack, Telegram, Webhook et bien d’autres
  • Résumés par LLM possibles, y compris en local avec Ollama
  • Auto-hébergeable gratuitement, ou en abonnement hébergé

changedetection.io en image (tirée de la page du projet)

À quoi sert changedetection.io

Surveiller une page web à la main oblige à la recharger sans cesse. changedetection.io s’en charge : tu lui donnes une adresse, il la revisite à intervalle régulier, compare le contenu avec la version précédente et te prévient si quelque chose a bougé.

Le README cite de nombreux usages : changement de prix, alerte de retour en stock, mises à jour sur le site d’une administration, nouvelles versions de logiciels ou avis de sécurité, offres d’emploi sur une page carrières, annonces immobilières, modifications de documents juridiques ou détection de défiguration d’un site.

  • Prix et retours en stock d’un produit
  • Changements dans un fichier PDF
  • Réponses d’une API JSON
  • Pages d’actualités ou de carrières

Comment fonctionne changedetection.io

Chaque page surveillée est une « watch ». Tu règles la fréquence des vérifications et tu peux les limiter à certains jours ou horaires, dans n’importe quel fuseau horaire. Des raccourcis existent pour les heures de bureau ou les week-ends.

Pour les pages simples, un récupérateur HTTP rapide suffit. Pour les sites qui dépendent de JavaScript, l’outil sait passer par un navigateur Chrome, via WebDriver ou Playwright. La comparaison peut se lire mot par mot, ligne par ligne ou caractère par caractère.

changedetection.io : autre image tirée de la page du projet

Filtres, étapes de navigateur et conditions

Pour ne pas être alerté pour rien, tu peux cibler une partie de la page : sélecteurs CSS, XPath, ou le Visual Selector, qui permet de pointer l’élément à surveiller. Ce sélecteur visuel demande un navigateur de type Playwright. Il existe aussi des filtres de texte (déclencher sur un mot, ignorer un texte, extraire une valeur) qui acceptent les expressions régulières.

Les Browser Steps ajoutent des actions avant la comparaison : remplir un champ, cliquer, se connecter, accepter les cookies, ajouter un produit au panier. Ils requièrent aussi Playwright. Des conditions permettent enfin de ne déclencher l’alerte que si un prix passe sous ou au-dessus d’un seuil, ou si un mot-clé apparaît ou disparaît.

Prix, stocks, PDF et API JSON

L’option de détection de réapprovisionnement et de prix pour les pages de produit lit les métadonnées de la page. Tu fixes un prix minimum, un prix maximum ou un pourcentage de variation, et l’évolution s’affiche sous forme de graphique.

Pour les API, des filtres JSONPath ou jq extraient la donnée voulue, et le README précise que jq permet d’ajouter de la logique, par exemple ne garder que les valeurs supérieures à un seuil. Ces filtres savent aussi lire du JSON intégré dans une page HTML, fréquent sur les boutiques en ligne. Les PDF sont suivis par leur texte, leur taille et leur somme de contrôle.

Alertes et résumés par LLM

Les notifications reposent sur la bibliothèque Apprise : Discord, Slack, Telegram, Email, Office 365, Rocket.Chat, Webhook et bien d’autres. Le titre et le corps du message se personnalisent avec des modèles Jinja2, et une capture d’écran peut accompagner l’alerte.

En option, tu peux brancher un LLM (OpenAI, Gemini, Anthropic, Ollama et d’autres, via LiteLLM). Il sert à écrire des règles en langage courant, comme « me prévenir seulement si le prix passe sous 50 $ », et à remplacer le diff brut par un résumé du type « Prix passé de 89,99 $ à 67,00 $ ». Il fonctionne aussi en local avec Ollama, vLLM, LM Studio ou tout serveur compatible OpenAI.

Installer changedetection.io

La méthode la plus directe passe par Docker. Avec Docker Compose, il suffit de cloner le dépôt puis de lancer la première commande. Sans Compose, la seconde commande démarre le conteneur, et l’interface est ensuite accessible sur le port 5000.

Le README indique aussi une installation par pip, avec l’interface sur une page dédiée du wiki pour Windows, et la prise en charge de Raspberry Pi et de plusieurs architectures ARM. L’étiquette :latest correspond à la dernière version stable, :dev à la branche de développement.

docker compose up -d
pip3 install changedetection.io
changedetection.io -d /path/to/empty/data/dir -p 5000

Où en est le projet et que prévoir

Selon les chiffres relevés sur GitHub le 9 novembre 2026, le dépôt compte 35 664 étoiles, 176 contributeurs et 391 tickets et demandes de fusion ouverts. Il a été créé le 27 janvier 2021, sa licence est Apache-2.0, et la dernière version, 0.70.2, date du 5 novembre 2026. Ses notes mentionnent surtout du travail sur MCP, un protocole qui relie des assistants IA à l’outil, ainsi que sur les réglages LLM et l’API.

Le projet propose aussi un abonnement hébergé à 8,99 $ par mois, avec jusqu’à 5 000 URL, un navigateur Chrome inclus et des proxys. L’outil auto-hébergé reste gratuit. Le README ne donne pas de configuration minimale pour l’installer soi-même.

Quelques repères

  • LLM : Un LLM, ou grand modèle de langage, est un programme d’intelligence artificielle entraîné sur beaucoup de texte. Il sait résumer, reformuler et répondre à des consignes écrites en langage courant.
  • API : Une API est une porte d’entrée qui permet à un programme d’échanger des données avec un autre, sans passer par une page web destinée aux humains.
  • Conteneur : Un conteneur est un paquet qui regroupe un logiciel et ce dont il a besoin pour fonctionner. Il se lance de la même façon sur des machines différentes.

Questions fréquentes

changedetection.io est-il gratuit ?

Oui, le projet est open source sous licence Apache-2.0 et peut être installé soi-même gratuitement. Un abonnement hébergé existe aussi, à 8,99 $ par mois, avec jusqu’à 5 000 URL.

Comment être alerté d’un retour en stock avec changedetection.io ?

Il faut activer l’option de détection de réapprovisionnement et de prix pour les pages de produit. changedetection.io envoie alors une alerte quand le produit revient en stock ou quand son prix change, par Discord, Slack, email ou un autre canal.

changedetection.io peut-il surveiller un fichier PDF ?

Oui, changedetection.io suit les changements de texte d’un PDF, ainsi que sa taille et sa somme de contrôle.

changedetection.io fonctionne-t-il avec un LLM local ?

Oui, le README cite Ollama, vLLM, LM Studio et tout serveur compatible OpenAI. Il faut choisir l’option compatible OpenAI dans la liste des fournisseurs et indiquer l’adresse /v1 du serveur.

À retenir

changedetection.io surveille des pages, des PDF et des API JSON, puis alerte par de nombreux canaux, avec des filtres, un suivi des prix et des stocks et des résumés par LLM facultatifs. Il s’installe gratuitement avec Docker ou pip, ou s’utilise en abonnement hébergé à 8,99 $ par mois.

Sources

monitoringalertesself-hostedscrapingnotificationsllm
Dans le même genre

Des fiches proches.

toute la famille
À lire aussi

Les dernières fiches.

tout l'annuaire

Le Carnet de Geekus · chaque vendredi

Les trouvailles de la semaine, dans ta boîte mail.

Un email, cinq minutes de lecture. En français, gratuit, sans publicité.

S'inscrire au Carnet →
  1. Le spécimen de la semaine, expliqué à fond
  2. L'actu IA en bref
  3. Les autres trouvailles et le mot de la semaine