# Cdiscount Scraper — French Products, Prices & Deals (`hipersoft/cdiscount-scraper`) Actor

Scrape products from Cdiscount.com, France's big online marketplace: price, comparison price, discount, deal badges, key specs, delivery, sponsored flag and images from any search or category. Track French e-commerce prices and promotions. Export CSV/JSON.

- **URL**: https://apify.com/hipersoft/cdiscount-scraper.md
- **Developed by:** [hiper soft](https://apify.com/hipersoft) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.001 / product

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Cdiscount Scraper: French Products, Prices, Discounts and Deals

**Cdiscount Scraper** extracts product data from **Cdiscount.com**, one of France's largest online retailers and marketplaces, with millions of products in **high-tech, electroménager, maison, jardin, bricolage, jeux vidéo and sport**. For every product you get the **current price, comparison price, discount percentage, deal badges ("Bon plan", "Plus responsable"), key specifications, delivery options (free delivery, delivered by Cdiscount, Cdiscount à volonté), promotions, sponsored flag, high-resolution image** and the product link. Search any keyword such as **TV, iPhone, aspirateur robot, lave-linge or trottinette électrique**, or paste any **Cdiscount category or search link**, and export to **CSV, Excel or JSON**. Ideal for **price monitoring, competitor tracking and deal hunting on the French e-commerce market**.

### What does Cdiscount Scraper do?

- 🔎 **Search by keyword**: any term you would type into Cdiscount, one search per term.
- 🗂️ **Category and search links**: paste Cdiscount category pages or result links with your own filters and sorting.
- 💶 **Prices and discounts**: current price, comparison price ("Prix de comparaison") and discount %.
- 🏷️ **Deal badges**: "Bon plan", "Plus responsable" and other labels.
- 📋 **Key specs**: the highlighted characteristics shown for each product (screen size, power, capacity…).
- 🚚 **Delivery**: free delivery, delivered by Cdiscount, and Cdiscount à volonté eligibility.
- 🎁 **Promotions**: running commercial offers (e.g. "Partagez votre avis et gagnez 10€").
- 📢 **Sponsored flag** for paid placements, with an option to drop them.
- 🖼️ **High-resolution product image** (700×700).
- 🧹 **Filters**: min/max price and "only discounted products".
- 📈 **Deep pagination**: collect thousands of products per search.

### What data can you scrape from Cdiscount?

| Field | Description |
|---|---|
| Product | Title, SKU, category code, offer ID, product link |
| Price | Price, comparison price and its label, discount % |
| Highlights | Key characteristics shown in the results |
| Badges | Bon plan, Plus responsable and other labels |
| Promotion | Current commercial offer |
| Delivery | Free delivery, delivered by Cdiscount, Cdiscount à volonté |
| Condition | New / refurbished label when shown |
| Image | High-resolution main image |
| Sponsored | Whether the result is a paid placement |

### Use cases for Cdiscount product data

- **Price monitoring**: track prices and discounts for your products or competitors on Cdiscount every day.
- **Marketplace sellers**: research categories, price points and competition before listing on the Cdiscount marketplace.
- **Brands and manufacturers**: check how resellers price and promote your products in France.
- **Deal and cashback sites**: automatically find the biggest "Bon plan" discounts.
- **E-commerce analytics**: compare Cdiscount with Amazon.fr, Fnac and other French retailers.
- **Market research**: analyse assortments and pricing in the French retail market.
- **Repricing tools**: feed live French retail prices into dynamic pricing.

### How to scrape Cdiscount

1. Click **Try for free** to open Cdiscount Scraper in Apify Console.
2. Enter **search terms** or paste **Cdiscount category / search links**.
3. Optionally set a **price range**, **Only discounted products**, or drop **sponsored** results.
4. Set **Max products** and click **Start**.
5. Download the products as **CSV, Excel or JSON**.

### Input

#### Example input

```json
{
  "searchTerms": ["aspirateur robot", "tv 55 pouces"],
  "minPrice": 100,
  "maxPrice": 800,
  "onlyOnSale": true,
  "includeSponsored": false,
  "maxItems": 1000
}
```

| Field | Description |
|---|---|
| **Search terms** | Keywords to search, one search each. |
| **Cdiscount category or search links** | Category pages or result links with your own filters. |
| **Minimum / Maximum price** | Price range in €. |
| **Only discounted products** | Only products below their comparison price. |
| **Include sponsored products** | Keep or drop sponsored placements. |
| **Max products** | Stop after this many (0 = no limit). |

### Output

#### Product example

```json
{
  "sku": "lie1705756008367",
  "categoryCode": "1101409",
  "offerId": "3273346749",
  "url": "https://www.cdiscount.com/electromenager/aspirateurs-nettoyeurs/liectroux-g7-aspirateur-robot-4-en-1-avec-collecte/f-1101409-lie1705756008367.html",
  "title": "LIECTROUX G7 Aspirateur robot 4 en 1 avec Collecteur automatique de poussières - Aspiration et lavage 6500 Pa - Navigation Laser",
  "price": 179,
  "comparisonPrice": 359,
  "comparisonPriceLabel": "Prix de comparaison",
  "discountPercent": 50,
  "currency": "EUR",
  "highlights": [
    "Mode de nettoyage : Mode serpillère Standard et mode Boost",
    "Collecte des poussières : Vidage automatique du bac à poussière",
    "Capacité du collecteur : 300 ml",
    "Puissance électrique : 1000 W"
  ],
  "badges": ["Bon plan"],
  "promotion": "Partagez votre avis et gagnez 10€",
  "freeDelivery": true,
  "deliveredByCdiscount": true,
  "cdiscountAVolonte": true,
  "condition": null,
  "imageUrl": "https://www.cdiscount.com/pdt2/3/6/7/1/700x700/lie1705756008367/rw/liectroux-g7-aspirateur-robot-4-en-1-avec-collecte.jpg",
  "sponsored": true,
  "search": "aspirateur robot"
}
```

#### Output schema

| Field | Type | Description |
|---|---|---|
| `sku`, `categoryCode`, `offerId` | string | Identifiers. |
| `url`, `title` | string | Product link and title. |
| `price`, `comparisonPrice`, `comparisonPriceLabel`, `discountPercent`, `currency` | mixed | Pricing. |
| `highlights` | array | Key characteristics. |
| `badges` | array | Deal and sustainability labels. |
| `promotion` | string | Current offer. |
| `freeDelivery`, `deliveredByCdiscount`, `cdiscountAVolonte` | boolean | Delivery. |
| `condition` | string | Condition label. |
| `imageUrl` | string | Product image. |
| `sponsored` | boolean | Paid placement. |
| `search`, `scrapedAt` | string | Source info. |

### How much does it cost to scrape Cdiscount?

Cdiscount Scraper uses **pay-per-product** pricing: a small fixed price per product, with automatic discounts on higher Apify plans. See the **Pricing** tab for the exact price. It collects hundreds of products per minute.

### More e-commerce data

- [OTTO.de Scraper](https://apify.com/hipersoft/otto-scraper): German products, prices and ratings.
- [Amazon Product Scraper](https://apify.com/hipersoft/amazon-product-scraper): products and prices from Amazon.
- [eBay Scraper](https://apify.com/hipersoft/ebay-scraper): eBay listings and prices.

### FAQ

**How many products can I get?**
As many as Cdiscount lists for your search or category, including searches with thousands of products.

**Can I scrape a whole category?**
Yes. Paste the category or search link into **Cdiscount category or search links**.

**Can I track price changes?**
Yes. Schedule the scraper daily and compare `price` and `comparisonPrice` over time, or turn on **Only discounted products** to catch new deals.

**What is the comparison price?**
It is the reference price Cdiscount shows next to the current price; `discountPercent` is calculated from it.

**What formats can I export?**
CSV, Excel, JSON, XML, HTML and RSS, or read the results through the Apify API.

**Can I integrate Cdiscount Scraper with other apps?**
Cdiscount Scraper can be connected with almost any cloud service or web app thanks to [integrations on the Apify platform](https://apify.com/integrations). It works with [Make](https://apify.com/integrations/make), [Zapier](https://apify.com/integrations/zapier), [Slack](https://docs.apify.com/platform/integrations/slack), [Airbyte](https://docs.apify.com/platform/integrations/airbyte), [GitHub](https://docs.apify.com/platform/integrations/github), [Google Drive](https://docs.apify.com/platform/integrations/drive) and [many more](https://apify.com/integrations), plus the [Apify API](https://docs.apify.com/api/v2), JS/Python clients and MCP. Or use [webhooks](https://docs.apify.com/platform/integrations/webhooks) to trigger an action whenever a run finishes.

**Is it legal to scrape Cdiscount?**
The scraper only collects publicly listed product information. You are responsible for using the data in line with Cdiscount's terms and applicable law.

### Related Actors

- [OTTO.de Scraper](https://apify.com/hipersoft/otto-scraper)
- [Amazon Product Scraper](https://apify.com/hipersoft/amazon-product-scraper)

### Notes

Original clean-room implementation. Returns only public data. Not affiliated with Cdiscount.

# Actor input Schema

## `searchTerms` (type: `array`):

What to search on Cdiscount, e.g. tv, iphone, aspirateur robot, lave-linge, trottinette électrique. Each term is a separate search.

## `startUrls` (type: `array`):

Optional. Paste Cdiscount category pages or search-results links with your own filters and sorting.

## `minPrice` (type: `integer`):

Only products at or above this price.

## `maxPrice` (type: `integer`):

Only products at or below this price.

## `onlyOnSale` (type: `boolean`):

Only return products shown below their comparison price.

## `includeSponsored` (type: `boolean`):

Keep sponsored placements in the results (flagged with sponsored = true).

## `maxItems` (type: `integer`):

Stop after this many products. 0 means no limit.

## `proxyConfiguration` (type: `object`):

Not required for normal use.

## Actor input object example

```json
{
  "searchTerms": [
    "aspirateur robot"
  ],
  "onlyOnSale": false,
  "includeSponsored": true,
  "maxItems": 50,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `results` (type: `string`):

The results as dataset items.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerms": [
        "aspirateur robot"
    ],
    "maxItems": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("hipersoft/cdiscount-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchTerms": ["aspirateur robot"],
    "maxItems": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("hipersoft/cdiscount-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerms": [
    "aspirateur robot"
  ],
  "maxItems": 50
}' |
apify call hipersoft/cdiscount-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,hipersoft/cdiscount-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/nbUd0uMZMsVscoojE/builds/MMvVO6cCoXNYUJ5Jh/openapi.json
