Darty Scraper at a glance
Darty Scraper is a ready-to-run Apify actor from abotapi for collecting ecommerce data. Its documented output includes product id (codic), ean, product, change type (incremental mode) and brand, which you can export as JSON, CSV or Excel or read through the Apify API. It costs $2.00 per 1,000 results on the Apify Free plan and from $1.20 on paid plans, with smaller per-run or optional feature charges listed on Apify.
- Runs on
- Apify cloud: console, API, schedules and integrations
- Data type
- Ecommerce, Developer Tools, Automation
- Pricing
- $2.00 per 1,000 results (Free plan), from $1.20 on paid plans
- Output
- Documented below · JSON, CSV, Excel
- Inputs
- 24 options
Scrape Darty (darty.com) products: current price plus strike-through reference price and discount, brand, category breadcrumb, full spec sheet, and the site's own customer reviews with rating breakdown. Search by keyword or paste product/listing links.
What Darty Scraper can do
- Was-price and discount, structured, never fabricated. When a product is marked down against darty.com's own reference price, both prices are captured plus the computed discount amount, percentage, and the site's own promo label (e.g. "Bon Plan", "Soldes"). A full-price product always carries null there, never a guessed markdown.
- Real narrowing, not a filter that quietly does nothing. Rating floor and free-delivery narrow via the site's own search facets, verified against live results; brand narrows against the site's own card-level brand field; sort reorders the full server-side result set.
- Reviews straight from the product page. Overall rating, total review count, recommend-percentage, per-criteria scores (e.g. ease of use, value for money), and the page's own individual reviews, not a third-party review vendor.
- Flattened spec sheet on demand. Full detail returns every characteristic the product page itself declares (screen size, energy class, dimensions, EAN, and whatever else that category carries) rather than a fixed field list, so nothing category-specific is silently dropped.
- Two ways in. Keyword search with real site filters (brand, price range, discount-only, rating, free delivery, sort), or paste any product or search-result link and continue pagination automatically.
- Optional export to your apps. Send results into Notion, Linear, Airtable, or any Apify MCP connector alongside the dataset.
Choose what to collect
These inputs let you configure Darty Scraper - Prices, Discounts, Specs & Reviews. Open the actor on Apify to enter your values and review the current options.
| Input | What it controls |
|---|---|
modestring · required | 'search' finds products by keyword using darty.com's own search. 'url' scrapes any product or search-result-listing page URL you paste, walking pagination forward automatically. |
searchTermstring | Free-text keyword, e.g. 'television' or 'lave-linge'. Uses darty.com's own product search. |
minRatinginteger | Only return products rated at least this many stars (1-5). Narrows via darty.com's own search facet server-side. 0 or empty = no rating filter. Search mode only: it is written into darty.com's own search URL, so a pasted URL keeps whatever it already carries. |
freeDeliveryOnlyboolean | Only return products showing free home delivery, via darty.com's own search facet. Search mode only: it is written into darty.com's own search URL, so a pasted URL keeps whatever it already carries. |
sortBystring | darty.com's own sort order, verified live to reorder the full server-side result set. Search mode only: it is written into darty.com's own search URL, so a pasted URL keeps whatever it already carries. |
urlsarray | Paste one or more darty.com product pages or search-result-listing pages. Pagination continues forward automatically from any offset already in the URL. Search-mode fields are ignored here. The fields in the Filters section still apply, including to a pasted product URL. |
brandsarray | Only return products from these brands, e.g. 'Samsung'. Matched against the site's own brand field on every card, client-side, case-insensitive. Leave empty for all brands. Applies in BOTH search mode and URL mode, including a pasted product URL. |
Show 17 more inputs
| Input | What it controls |
|---|---|
minPricenumber | Only return products priced at or above this amount, in euros. Applies in BOTH search mode and URL mode, including a pasted product URL. |
maxPricenumber | Only return products priced at or below this amount, in euros. Applies in BOTH search mode and URL mode, including a pasted product URL. |
specialsOnlyboolean | Only return products currently showing a genuine strike-through discount against darty.com's own reference price (verified live against real price data -- never a guess). Applies in BOTH search mode and URL mode, including a pasted product URL. |
fetchDetailsboolean | Adds full description, EAN, breadcrumb category path, and the complete flattened spec sheet (every characteristic the product page shows, not a fixed list) plus the full image gallery. Current price, was-price/discount, rating and card image are already included without this toggle. |
fetchReviewsboolean | Fetch the product's own customer reviews (not a third-party vendor): overall rating, total review count, recommend-percent, per-criteria scores (e.g. ease of use, value for money), and the page's own most recent individual written reviews (rating, title, body, author, dates, purchase store). Products with no reviews simply return an empty list. |
maxReviewsPerProductinteger | Cap on written reviews fetched per product when 'Fetch reviews' is on, up to the site's own per-page limit. Values above 100 are capped at 100. |
maxPagesinteger | Stop after this many result pages per search/URL entry. Leave empty for no page limit -- the run stops at Max products total. |
maxItemsinteger | Hard cap on total products returned across every search/URL entry. 0 = unlimited (still bounded by Max pages per search). |
resumeFromRunIdstring | Paste a previous run ID or dataset ID to continue a large crawl of products without returning or charging for products already collected there. Use this after an interrupted run, or when continuing a product pull in another run. For recurring monitoring of the same search, use Incremental mode below instead. |
incrementalModeboolean | Turn this on for daily or recurring monitoring. The first run returns all matching products as NEW. Later runs normally return only NEW, UPDATED, and REAPPEARED products. Turn on "Emit unchanged" or "Emit expired" only when you also want those products returned (and billed). State is kept separately for each mode/search-or-URL/filter setup; use State key when you want to name or deliberately share a monitoring campaign. To continue one specific interrupted run instead, use Resume from a previous run above. |
stateKeystring | Optional. Name this monitoring campaign to keep its state stable, or to deliberately share state across differently-configured runs. Leave empty to let the actor derive a key automatically from the mode, search/URL and filter settings -- different searches then never mix state with each other. |
emitUnchangedboolean | Off by default. Turn on to also return products that have not changed since the last run, marked UNCHANGED. This returns -- and bills -- extra rows you already have, so leave it off unless you specifically want the full snapshot every run. |
emitExpiredboolean | Off by default. Turn on to also return products that were present in a previous run but are no longer found, marked EXPIRED. Only produced once a run has fully scanned every tracked search/URL -- not when Max products capped it or when Resume was used. This returns -- and bills -- extra synthetic rows, so leave it off unless you need expiry tracking. |
ignoreFieldsForChangesarray | Optional. Field names that must NOT make a product count as UPDATED, for example "rating" or "reviews.count" (dotted paths reach nested fields). Ignored fields stay in the output and the saved baseline; they are only left out of the comparison and of changedFields. Leave empty to compare every field. |
mcpConnectorsarray | Optionally send the scraped results into the apps you already use, via Model Context Protocol (MCP) connectors. Authorize a connector once under Apify -> Settings -> Integrations, then select it here. The connector receives a condensed, human-readable summary per item (title + key fields), not the full JSON; the complete record stays in the dataset. Leave empty to skip. Supported: Notion (https://mcp.notion.com/mcp), Linear (https://mcp.linear.app/sse), Airtable (https://mcp.airtable.com/mcp), Apify (https://mcp.apify.com). |
notionParentPageUrlstring | URL (or id) of the Notion page under which item pages are created. Required to enable the Notion export; ignored by other connectors. |
maxNotifyListingsinteger | Cap on items written to each connector per run. Does not affect the dataset. |
Fields in the output
The documented dataset includes the fields below. Availability can depend on the source page and selected mode.
productIdProduct ID (codic) (text)eanEAN (text)nameProduct (text)changeTypeChange type (incremental mode) (text)brandBrand (text)categoryCategory (text)pricePrice (number)currencyCurrency (text)originalPriceReference price (number)discountPercentDiscount % (number)isOnSpecialOn discount (boolean)promoLabelPromo label (text)Show 12 more fields
ratingRating (number)reviewCountRatings (number)inStockIn stock (boolean)conditionCondition (text)sellerSeller (text)urlURL (link)imageImage (image)changedFieldsChanged fields (incremental mode) (array)firstSeenAtFirst seen at (incremental mode) (date)lastSeenAtLast seen at (incremental mode) (date)specsCharacteristics (name/value) (object)reviewsReviews (rating, breakdown, per-review list) (object)Example output
An example from this actor’s documentation. Values are illustrative; this is not a fresh live result.
{
"productId": "00000001",
"ean": "0000000000000",
"url": "https://www.darty.com/nav/achat/hifi_video/televiseurs-led/grand_ecran_led/sample-brand-x100.html",
"image": "https://image.darty.com/darty?type=image&source=/sample/000000000.jpg",
"name": "TV LED Sample Brand X100 80 cm",
"brand": "Sample Brand",
"category": "TV LED",
"price": 119.99,
"currency": "EUR",
"originalPrice": 149.99,
"discountAmount": 30,
"discountPercent": 20,
"isOnSpecial": true,
"promoLabel": "Bon Plan",
"rating": 4.5,
"reviewCount": 26,
"inStock": true,
"availabilityLabel": "En stock",
"condition": "new",
"seller": "Darty",
"description": "Sample product description as shown on the product page.",
"breadcrumbPath": [
"TV, Video, Home cinema",
"Television",
"TV LED"
],
"specs": {
"Screen size (inches)": "32 \"",
"Definition": "HD (720p)",
"Energy class": "E"
},
"images": [
"https://image.darty.com/darty?type=image&source=/sample/000000000.jpg",
"https://image.darty.com/darty?type=image&source=/sample/000000001.jpg"
],
"reviews": {
"averageRating": 4.5,
"totalReviewCount": 26,
"recommendPercent": 93,
"criteria": [
{
"name": "Ease of use",
"score": 4.8
}
],
"items": [
{
"rating": 5,
"title": "Sample title",
"body": "Sample review text.",
"author": "JANE",
"level": "confirmed",
"postedDate": "01/01/2026",
"purchaseDate": "20/12/2025",
"purchaseStore": "DARTY SAMPLE"
}
]
}
}Ways to use this data
- Price comparison and deal sites: track was-price/now-price pairs and genuine discounts across TVs, appliances and electronics.
- Repricing and competitive intelligence: monitor a brand's or category's Darty pricing on a recurring schedule.
- Product research and buying guides: pull full spec sheets, images and reviews before publishing comparisons.
- Review analytics: aggregate rating breakdowns and individual written reviews across a catalog.
- Catalog and availability monitoring: Incremental mode flags newly listed, updated and (optionally) delisted products.
Before you run
Start with a small input and check the resulting records against your expected fields. Source content and actor options can change; the current Apify listing is the reference for availability and pricing.
Questions about this actor
What data does Darty Scraper return?
The documented output for Darty Scraper includes product id (codic), ean, product, change type (incremental mode), brand, category, price and currency. Availability of each field depends on the source page and the selected mode.
How much does Darty Scraper cost?
It costs $2.00 per 1,000 results on the Apify Free plan and from $1.20 on paid plans, with smaller per-run or optional feature charges listed on Apify. The Apify listing shows the current rate for every plan.
Can I get only new or changed products on a schedule?
Yes. Schedule the actor from the Schedules tab and turn on Incremental mode. Each run then returns only NEW and UPDATED products against a remembered baseline; UNCHANGED products are tracked but not billed unless you turn on Emit unchanged.
Why does a pasted product link not include a description field?
A pasted product URL fetches its own page in full and returns the real EAN, breadcrumb category, and true stock/condition, plus the spec sheet and image gallery when Fetch full product detail is on, but its own extraction path does not populate description. A search or listing result enriched with Fetch full product detail on does include it, since it comes from a different extraction path on the same page. If you need the description for a specific product, run it through search or a listing link instead of pasting its product URL directly.
Can I use it with AI agents or MCP?
Yes. Call it from any Apify integration or MCP client, and use the mcpConnectors field to push results into Notion, Linear or Airtable.
