VOOZH about

URL: https://apify.com/gokhanucar/ecom-price-monitor

⇱ E-commerce Price & Stock Monitor Β· Apify


πŸ‘ E-commerce Price & Stock Monitor avatar

E-commerce Price & Stock Monitor

Pricing

Pay per usage

Go to Apify Store

E-commerce Price & Stock Monitor

Monitors product prices, stock levels, availability and ratings from e-commerce sites. Auto-detects listing vs product pages, handles pagination, and outputs clean JSON/CSV. Schedule for daily/weekly price tracking. Retries and error logging built in.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

πŸ‘ GΓΆkhan UΓ‡AR

Gâkhan UÇAR

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 days ago

Last modified

Categories

Share

Monitor product price, stock and availability automatically from any category/listing page or direct product URL on books.toscrape.com β€” a public e-commerce sandbox site. Give it a category page and it auto-paginates through every product; give it direct product URLs and it scrapes them straight away. Clean, structured data lands in your dataset in seconds, ready to download as JSON, CSV or Excel, or to schedule on the Apify platform for recurring price/stock tracking.

This Actor targets the books.toscrape.com sandbox as a portfolio demonstration of a production-style monitoring pattern. The same architecture (content-based page detection, auto-pagination, per-item error isolation, scheduled re-runs) is what a real price/stock monitor for a live store would use.

Why use this Actor?

  • Price monitoring β€” track competitor or supplier prices over time by scheduling daily/hourly runs and diffing dataset exports.
  • Stock alerting β€” know the moment a product goes out of stock, or drops below a threshold, by feeding the stockCount field into your own alerting.
  • Catalog audits β€” pull a clean, structured snapshot of an entire category (title, price, rating, category) without writing any scraping code.
  • No browser overhead β€” built on CheerioCrawler (HTTP + HTML parsing only), so it's fast and cheap to run on the Apify platform compared to a headless-browser actor.

How to use

  1. Open the Actor and go to the Input tab.
  2. Add one or more Start URLs β€” mix and match freely:
    • A category/listing URL (e.g. the homepage, or a category like /catalogue/category/books/mystery_3/index.html) β€” the Actor follows pagination automatically and visits every product on it.
    • A direct product URL β€” the Actor scrapes it immediately, no listing page needed.
  3. Set Max products to scrape (maxItems) to cap how many products get scraped in this run (default 100).
  4. Click Start. Results stream into the Dataset tab as they're scraped.
  5. To monitor a category over time, save the run as a Task and add a Schedule (Apify Console β†’ Schedules β†’ Create new β†’ pick your Task β†’ set a cron interval, e.g. every 6 hours).

Input

FieldTypeRequiredDefaultDescription
startUrlsarray of { url }yes[{ "url": "https://books.toscrape.com/" }]Category/listing and/or direct product URLs.
maxItemsintegerno100Stops the run once this many products have been scraped.

Example input:

{
"startUrls":[
{"url":"https://books.toscrape.com/catalogue/category/books/mystery_3/index.html"},
{"url":"https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html"}
],
"maxItems":50
}

Output

Each scraped product is one row in the Dataset, and the full set is also written as a CSV file to the Key-value store under the key OUTPUT_CSV (visible in the Storage tab once a run finishes). You can also export the dataset directly from the Console in JSON, CSV, Excel, XML or RSS.

Example dataset item:

{
"title":"A Light in the Attic",
"price":51.77,
"currency":"GBP",
"availability":"In stock (22 available)",
"stockCount":22,
"rating":3,
"category":"Poetry",
"url":"https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html",
"scrapedAt":"2026-06-27T08:26:11.488Z"
}

Data fields

FieldTypeDescription
titlestringProduct title.
pricenumberCurrent price, numeric only (no currency symbol).
currencystring3-letter currency code, derived from the price symbol (Β£β†’GBP, $β†’USD, €→EUR).
availabilitystringRaw availability text as shown on the page.
stockCountnumber | nullUnits in stock, parsed out of availability when present.
ratingnumber | null1–5 star rating.
categorystring | nullProduct category from the page breadcrumb.
urlstringFinal product page URL.
scrapedAtstringISO 8601 timestamp of when the item was scraped.

Pricing

This Actor uses CheerioCrawler (plain HTTP requests, no browser), so it's cheap to run: roughly 100 products take ~25 seconds of compute. On the Apify Free plan, that's a negligible fraction of the monthly compute-unit allowance β€” you can comfortably run scheduled monitoring on hundreds of products per day for free.

Tips

  • Point startUrls at a narrow category instead of the homepage to monitor a focused product set with fewer requests.
  • Lower maxItems for quick test runs; raise it (or omit a low value) for full catalog snapshots.
  • Combine with Apify's Schedule feature for recurring monitoring, and the Webhooks feature to get notified when a run finishes.

FAQ & limitations

  • Is this legal? books.toscrape.com is a public sandbox built specifically for scraping practice β€” there's no Terms-of-Service concern here. For any real store, always check robots.txt and the site's ToS before scraping.
  • What if a page fails to load or doesn't look like a product/listing page? The Actor logs it and continues; a count and list of failed URLs is printed in the run log at the end. No partial/incorrect records are pushed for a failed page.
  • Does it support free-text search? Not currently β€” books.toscrape.com's search is JavaScript-driven and doesn't expose a crawlable results page. Category/listing and direct product URLs are fully supported.
  • Found a bug or want this adapted to a different e-commerce site? Open an issue on the Actor's Issues tab β€” custom adaptations are available on request.

Local development

npminstall
apify run # uses storage/key_value_stores/default/INPUT.json as input
npmtest# unit tests for the pure parsers/CSV builder + a live crawl smoke test

To deploy:

apify login
apify push

You might also like

E-commerce Price & Stock Monitor

zentrafoundry/ecommerce-price-stock-change-monitor

Detect product price and availability changes from dataset snapshots.

E-Commerce Price Tracker β€” Amazon & Shopify

ramsford/ecommerce-price-tracker

Monitor any Amazon ASIN or Shopify product URL. Get current price, stock, category rank, ratings, review velocity, and an AI narrative of what changed since last run. One scan per product. Perfect for repricing, MAP enforcement, and competitor monitoring.

Ecommerce Price Tracker

technicaldost/ecommerce-price-tracker

Track product prices across Amazon, eBay, Walmart. Monitor competitors and get price alerts.

πŸ‘ User avatar

Technical Dost Solutions

7

Structured Product Price & Stock Monitor β€” JSON-LD / Shopify

dami_studio/structured-product-price-stock-monitor

Monitors product price and stock on any store by reading its own JSON-LD / Shopify / WooCommerce data, then emits price-change and restock events with Slack/Discord webhook alerts for repricing and de

3

5.0

(2)

Supplier Stock/Price Monitor

zentrafoundry/supplier-stock-price-monitor

Track Supplier/manufacturer public product pages, Public sitemaps/RSS/CSV/XML feeds and return product availability, price, stock, review, catalog, and change records.

Shopify Scraper

autofacts/shopify

Shopify online store collection and product data extractor. Supports realtime price/stock monitor. Crawl product list or single product in a structured form, including title,description,price,sku, etc.

2.2K

4.3

(5)

Notino Product Extractor

kawsar/notino-product-extractor

Scrape product data, prices, ratings, and reviews from any Notino domain. Built for market research and e-commerce price comparison without getting blocked.

Shopify Inventory & Sales Intelligence Scraper

ahmed_jasarevic/shopify-inventory-sales-intelligence-scraper

Stop using slow, clunky scrapers that only give you half the data. This high-performance Shopify extractor is engineered for professional e-commerce analysis, price monitoring, and real-time inventory tracking.

πŸ‘ User avatar

Ahmed Jasarevic

3

Otto.de Listings Scraper

piotrv1001/otto-de-listings-scraper

The Otto.de Listings Scraper extracts product listings from Otto.de category and search pages, capturing IDs, names, brands, prices, images, availability, and ratings with automatic pagination β€” ideal for German e-commerce price monitoring, assortment tracking, and competitive market research.

Lider.cl Product URL Scraper - Price Monitor

scraperschile/lider-cl-product-url

Monitor any Lider.cl product URL and extract current price, list price, discount, stock, seller, brand, images, and timestamp. Built for price alerts, competitor tracking, ecommerce dashboards, and retail intelligence in Chile.

πŸ‘ User avatar

Scrapers Chile

2