Monitors websites for changes. Detects modifications to HTML structure and visual differences via screenshots. Provides detailed change reports including HTML diff. Track multiple URLs. Use tasks for recurring runs. Integrate as API
This Website Change Detector is a tool for monitoring changes in web pages over time. It detects modifications to both the HTML structure and visual differences via screenshots, and generates detailed reports including an HTML diff. This Actor is ideal for tracking changes on competitor websites, important pages, or any web content that needs constant monitoring.
This actor automates the process of web page monitoring, it offers a comprehensive solution for detecting modifications in web content by:
Using this actor is straightforward:
To start monitoring websites, the actor accepts the following input parameters:
urls
: An array of URLs of the web pages you want to monitor.save_screenshot
: A boolean flag to determine whether to take a screenshot of the web pages or not (default is True
).Here’s an example of an input configuration in JSON format:
1{ 2 "urls": [ 3 "https://apify.com", 4 "https://www.example.com", 5 "https://www.ikea.com/nl/nl/p/onsevig-vloerkleed-laagpolig-veelkleurig-60497078/" 6 ] 7 "save_screenshot": true 8}
The output from this Actor is stored in a dataset. You can view this data in the Apify UI or download it in JSON, CSV, or other formats.
The output is a JSON object with the following structure for each URL:
1{ 2 "url": "https://apify.com", 3 "hasChanged": true, 4 "screenshotChange": false, 5 "date": 1704000000.000, 6 "htmlDiff": "<div class=\"diff\">...</div>", 7 "previous_screenshot": "base64_encoded_previous_screenshot", 8 "current_screenshot": "base64_encoded_current_screenshot", 9 "signature": "sha256_hash_of_the_html", 10 "html": "<html>...</html>" 11}
url
: The URL of the web page that was monitored.hasChanged
: A boolean that indicates if there were changes to the HTML structure since the last runscreenshotChange
: A boolean that indicates if there were changes to the screenshot since the last run.date
: The timestamp of when the check was madehtmlDiff
: A string that contains the differences in the HTML if hasChanged
is true
, it contains null
otherwise.previous_screenshot
: Base64-encoded string of the previous screenshot, if available, null
otherwisecurrent_screenshot
: Base64-encoded string of the current screenshot, if available, null
otherwisesignature
: SHA256 hash of the page's HTML (used for change detection).html
: The current HTML of the pageThis actor fetches, analyzes, and compares web page data using a series of steps:
check_interval
and save_screenshot
.save_screenshot
is true, it will create a full-page screenshot of the web page using Selenium.hasChanged
will be set to true
.screenshotChange
will be set to true
.hasChanged
, screenshotChange
, timestamps, HTML diff, screenshots, and the current HTML, are stored in Apify's Key-value store.This Actor integrates with other Apify platform components and other external services:
This Website Change Detector will allow you to track changes in the websites you need by efficiently monitoring for changes in the structure, and also tracking the screenshots.
If this actor doesn't exactly meet your needs, you can use one of the scraper templates available in Python, JavaScript, and TypeScript to get started or check out our open-source library Crawlee.
You can also request a custom scraping solution from us.
Your feedback is valuable to us. If you have any suggestions or find a bug, please create an issue on the Actor's Issues tab in the Apify Console.
This actor uses Apify's Pay-per-result pricing model. Apify also provides you with free monthly usage credits.
You can access the Apify API programmatically via RESTful HTTP endpoints or SDKs (apify-client NPM package for JavaScript, apify-client PyPI package for Python) to run, manage, and get the data out of any actor.
This actor only extracts data that is publicly available. Please ensure that you comply with the terms and conditions of websites you scrape, and you are responsible for ensuring your compliance with data privacy regulations such as GDPR.
Yes, if you're scraping publicly available data for personal or internal use. Always review Websute's Terms of Service before large-scale use or redistribution.
No. This is a no-code tool — just enter a job title, location, and run the scraper directly from your dashboard or Apify actor page.
It extracts job titles, companies, salaries (if available), descriptions, locations, and post dates. You can export all of it to Excel or JSON.
Yes, you can scrape multiple pages and refine by job title, location, keyword, or more depending on the input settings you use.
You can use the Try Now button on this page to go to the scraper. You’ll be guided to input a search term and get structured results. No setup needed!