v0.52.9

Try our Chrome extension

Chrome store icon Chrome Webstore

Easily add the current web-page from your browser directly into your changedetection.io tool, more great features coming soon!

Changedetection.io needs your support!

You can help us by supporting changedetection.io on these platforms;

The more popular changedetection.io is, the more time we can dedicate to adding amazing features!

Many thanks :)

changedetection.io team

  • No watch with the UUID dbe1197d-0ed4-4324-9a5e-dcf6bd3d61a8 found.
  • No watch with the UUID e3a80cce-9da2-476d-8c82-d589ee59f9bb found.
  • 未找到 UUID 为 1869453a-d069-47f4-afa0-17b691834b65 的监控项。
  • No watch with the UUID 27285167-0b96-4f58-9aa2-930e5783c4d6 found.
  • No watch with the UUID 1571ea76-0ade-49bb-80d1-a31a4c64d890 found.
  • Cloned, you are editing the new watch.
  • No watch with the UUID a51ecd39-f99f-43d6-8f8f-1cd071b4cbdc found.
  • No watch with the UUID b819edaf-0305-433e-b765-5138a9daeb4f found.
  • No watch with the UUID a29892a1-94e5-4dc8-8b66-03e7cc8b9e16 found.
  • Deleted.
  • No watch with the UUID 1bd87119-8f6c-45d2-82fe-2b8acc18da0c found.
  • No watch with the UUID 5a3caa21-6e1c-47bd-bbf7-55b7ac3729a9 found.
  • No watch with the UUID 08b693be-6826-42c1-ac30-3ab942a4c6db found.
  • No watch with the UUID d829b812-bd07-4998-b4e2-f95870fd2ebf found.
  • No watch with the UUID 32ea409b-a351-4a75-8c75-f460e224fae6 found.
  • No watch with the UUID b60195ee-93ec-4c99-a72b-12222d5006ef found.
  • No watch with the UUID eb10997f-f3f0-4079-9d9e-4a9fca199de2 found.
  • No watch with the UUID 1869453a-d069-47f4-afa0-17b691834b65 found.
  • No watch with the UUID 16b67f93-4bbe-46e9-9b85-68fea9056155 found.
  • No watch with the UUID d08b3844-026c-40a6-a562-69dbe2946ccb found.
  • No watch with the UUID f0d3f431-4beb-4018-a02c-9d86208f7511 found.
  • 未找到 UUID 为 32ea409b-a351-4a75-8c75-f460e224fae6 的监控项。
  • No watch with the UUID 923764bd-05b0-41f5-8454-ea43d0ac4936 found.
  • No watch with the UUID 682ebdad-89c6-4ff5-825e-59036e6b0d9f found.
  • No watch with the UUID 8dcf1d8f-c866-4630-9151-5a58077679f9 found.
  • No watch with the UUID d0b4f68f-6aba-49bf-9a83-0326bc743e0e found.
  • Language set to auto-detect from browser
Some sites use JavaScript to create the content, for this you should use the Chrome/WebDriver Fetcher
Variables are supported in the URL (help and examples here).
Organisational tag/group name used in the main listing page
Automatically uses the page title if found, you can also use your own title/description here

The interval/amount of time between each check.

Want to use a time schedule? First confirm/save your Time Zone Settings

Sends a notification when the filter can no longer be seen on the page, good for knowing when the page changed and your filter will not work anymore.

Use the Basic method (default) where your watched site doesn't need Javascript to render.

The Chrome/Javascript method requires a network connection to a running WebDriver+Chrome server, set by the ENV var 'WEBDRIVER_URL'.

Tip: Connect using Bright Data and Oxylabs Proxies, find out more here.
If you're having trouble waiting for the page to be fully rendered (text missing etc), try increasing the 'wait' time here.
This will wait n seconds before extracting the text.
Using the current global default settings

Sorry, this functionality only works with fetchers that support interactive Javascript (so far only Playwright based fetchers)
You need to Set the fetch method to one that supports interactive Javascript.

Use system defaults

Tip: Use AppRise Notification URLs for notification to just about any service! Please read the notification services wiki here for important configuration notes.

Show advanced help and tips
Title for all notifications
Body for all notifications — You can use Jinja2 templating in the notification title, body and URL, and tokens from below.
Show token/placeholders
  • For JSON payloads, use |tojson without quotes for automatic escaping, for example - { "name": {{ watch_title|tojson }} }
  • URL encoding, use |urlencode, for example - gets://hook-website.com/test.php?title={{ watch_title|urlencode }}
  • Regular-expression replace, use |regex_replace, for example - {{ "hello world 123" | regex_replace('[0-9]+', 'no-more-numbers') }}
  • For a complete reference of all Jinja2 built-in filters, users can refer to the https://jinja.palletsprojects.com/en/3.1.x/templates/#builtin-filters

Format for all notifications
Field
Operator
Value
Actions

Use the verify (✓) button to test if a condition passes against the current snapshot.

Read a quick tutorial about using conditional web page changes here.
Activate preview
Pro-tips:
  • Use the preview page to see your filters and triggers highlighted.
  • Some sites use JavaScript to create the content, for this you should use the Chrome/WebDriver Fetcher
One CSS, xPath 1 & 2, JSON Path/JQ selector per line, any rules that matches will be used.
Show advanced help and tips
  • Remove HTML element(s) by CSS and XPath selectors before text conversion.
  • Don't paste HTML here, use only CSS and XPath selectors
  • Add multiple elements, CSS or XPath selectors per line to ignore multiple parts of the HTML.

Text filtering

Limit trigger/ignore/block/extract to;
Note: Depending on the length and similarity of the text on each line, the algorithm may consider an addition instead of replacement for example.
 So it's always better to select Added+Replaced when you're interested in new content.
 When content is merely moved in a list, it will also trigger an addition, consider enabling Only trigger when unique lines appear
Good for websites that just move the content around, and you want to know when NEW content is added, compares new lines against all history for this watch.
Remove duplicate lines of text
Helps reduce changes detected caused by sites shuffling lines around, combine with check unique lines below.
Remove any whitespace before and after each line of text
  • Text to wait for before triggering a change/notification, all text and regex are tested case-insensitive.
  • Trigger text is processed from the result-text that comes out of any CSS/JSON Filters for this monitor
  • Each line is processed separately (think of each line as "OR")
  • Note: Wrap in forward slash / to use regex example: /foo\d/
  • Matching text will be ignored in the text snapshot (you can still see it but it wont trigger a change)
  • Each line processed separately, any line matching will be ignored (removed before creating the checksum)
  • Regular Expression support, wrap the entire line in forward slash /regex/
  • Changing this will affect the comparison checksum which may trigger an alert


  • Block change-detection while this text is on the page, all text and regex are tested case-insensitive, good for waiting for when a product is available again
  • Block text is processed from the result-text that comes out of any CSS/JSON Filters for this monitor
  • All lines here must not exist (think of each line as "OR")
  • Note: Wrap in forward slash / to use regex example: /foo\d/
  • Extracts text in the final output (line by line) after other filters using regular expressions or string match:
    • Regular expression - example /reports.+?2022/i
    • Don't forget to consider the white-space at the start of a line /.+?reports.+?2022/i
    • Use //(?aiLmsux)) type flags (more information here)
    • Keyword example - example Out of stock
    • Use groups to extract just that text - example /reports.+?(\d+)/i returns a list of years only
    • Example - match lines containing a keyword /.*icecream.*/
  • One line per regular-expression/string match

Sorry, this functionality only works with fetchers that support Javascript and screenshots (such as playwright etc).
You need to Set the fetch method to one that supports Javascript and screenshots.

Check count 29
Consecutive filter failures 0
History length 0
Last fetch duration 0.306s
Notification alert count 0
Server type reply snooserv

Not enough history to calculate Levenshtein metrics

Content Analysis

Word count (latest snapshot) 0

Word count is a simple measure of content length, calculated by splitting text on whitespace.