# Idealo Product Scraper (`saswave/idealo-scraper`) Actor

$2 / 1000 results. Extract product data from any subdomain search url. Also support product and competitor monitoring with a list of product url. Market analysis at scale. Scrap product information, price, title, tags, description, energy, store name, merchant name, list offers

- **URL**: https://apify.com/saswave/idealo-scraper.md
- **Developed by:** [SASWAVE](https://apify.com/saswave) (community)
- **Categories:** Automation, E-commerce, Travel
- **Features:** Limited permissions
- **Stats:** 184 total users, 5 monthly users, 11.1% runs succeeded, 2 bookmarks
- **User rating**: 1.86 out of 5 stars

## Pricing

from $2.00 / 1,000 results

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

### Idealo Scraper — Product, Price & Offer Intelligence at Scale

Scrape product data from Idealo across all domains (.fr, .de, .it, .co.uk, .es and more).

Extract price intelligence, merchant listings, product metadata, technical specifications, and competitive offers from Idealo search result pages and product URLs.

Ideal for:

Ecommerce monitoring

Price comparison engines

Market research

Competitor analysis

Automated product enrichment

### 🚀 Features

This actor crawls any Idealo subdomain and supports:

✅ Search result scraping
✅ Product page scraping
✅ Offer aggregation
✅ Merchant extraction
✅ GTIN & SKU parsing
✅ Energy rating detection
✅ Tag & category mapping
✅ Pros & cons extraction
✅ Technical specification tables
✅ Discount & badge tracking
✅ Cross-sell & suggestion links

### Output

Object from search

```json
{
  "link": "https://www.idealo.fr/prix/203721340/sony-playstation-5-slim-ps5-slim-edition-numerique-standard-edition.html",
  "image_link": "https://cdn.idealo.com/folder/Product/203721/3/203721340/s4_produktbild_mittelgross/sony-playstation-5-slim-ps5-slim-edition-numerique-standard-edition.jpg",
  "energy": "",
  "title": "Sony PlayStation 5 Slim (PS5 Slim) Édition numérique Standard Edition",
  "description": "Console PS5, 1 000 Go, HDMI , Wi-Fi",
  "score": "100",
  "reviews": "10",
  "test_score": "",
  "badges": [
    "-13 %"
  ],
  "offer_count": "39 offres",
  "price": "367,59 €"
}
```

Object from direct url or from search with input variable get_details = True

```json
{
  "link": "https://www.idealo.fr/prix/207702172/apple-iphone-air-256-go-or-clair.html",
  "image_link": "//cdn.idealo.com/folder/Product/207702/1/207702172/s4_produktbild_gross/apple-iphone-air-256-go-or-clair.jpg",
  "energy": "A",
  "title": "Apple iPhone Air 256 Go or clair",
  "test_score": "",
  "badges": [
    "- 10 %"
  ],
  "description": "Apple  iPhone Air 256 Go or clair - Smartphones | à partir de 1 084,99 € | Comparer les prix avec idealo.fr ! ✓ Conseils d’achat ✓ Comparatifs ✓ Avis & Tests produits",
  "image": "https://cdn.idealo.com/folder/Product/207702/1/207702172/s4_produktbild_gross/apple-iphone-air-256-go-or-clair.jpg",
  "offer_count": "16",
  "price": "1084.99",
  "score": "",
  "reviews": "",
  "sku": "0195950622911",
  "gtin": "0195950622911",
  "availability": "InStock",
  "brand": "Apple",
  "suggestions": [
    {
      "url": "https://www.idealo.fr/cat/19116F1827923-101456623/smartphones.html",
      "name": "404 Smartphones 5G Apple"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F105895301/smartphones.html",
      "name": "Smartphone AI"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F1827923/smartphones.html",
      "name": "665 Smartphones Apple"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F1827923-105895301/smartphones.html",
      "name": "116  Apple"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F101456623/smartphones.html",
      "name": "Smartphone 5G"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F3717691/smartphones.html",
      "name": "Smartphone 4G"
    }
  ],
  "product_details": {
    "Types de produit": "Smartphone 5G, Smartphone 4G, Smartphone AI",
    "Autonomie de la batterie par cycle": "40h 0min",
    "Classe de fiabilité en cas de chute": "B",
    "Classe de réparabilité": "C",
    "Nombre de cycles de recharge": "1 000 x",
    "Indice de protection contre les infiltrations": "IP68",
    "Introduction sur le marché": "2025",
    "Série": "Apple iPhone",
    "Gamme de smartphone": "Haut de gamme",
    "Atouts du produit": "WiFi 7, Téléphonie mobile 5G",
    "Taille de l'écran": "6,5 pouces",
    "Résolution d'écran": "2.736 x 1.260 pixels",
    "Types d'écran": "OLED, LTPO",
    "Fréquence de rafraîchissement": "120 Hz",
    "Particularités de l'écran": "Dolby Vision, HDR 10, Always On Display, Dynamic Island, Super Retina XDR OLED, True Tone, Haptic Touch",
    "Type de verre de l'écran": "Ceramic Shield Glass 2",
    "Propriétés de l'écran": "Résistant aux rayures",
    "Densité de pixel": "460 ppi",
    "Ratio screen-to-body": "89,9 %",
    "Luminosité": "2 000 cd/m²",
    "Contraste": "2 000 000:1",
    "Technique de caméra": "Stabilisation d'image optique, Enregistrement vidéo 8K",
    "Capteur photo 1": "48 MP, 26 mm, f/1,6, Grand angle, OIS",
    "Flash": "Dual Tone LED",
    "Fonctions de mise au point": "Autofocus Dual Pixel, Autofocus à détection de phase, Autofocus continu",
    "Stabilisateur d'image": "Optique",
    "Zoom optique": "2 x",
    "Zoom numérique": "10 x",
    "Fonction de l'appareil photo arrière": "HDR, Panorama, Lecture au ralenti, Lecture en accéléré, Enregistrement stéréo, Macro, Effet Bokeh, Intelligence artificielle, Détection des sourires, Mode nuit, Mode portrait, Mode Pro, Mode automatique, Correction yeux rouges, Mode rafale, Reconnaissance de scène",
    "Enregistrement vidéo de l'appareil photo arrière": "4K (60/30/25/24fps)",
    "Caractéristiques de l'appareil photo": "Spatial-Fotos, Spatial-Videos, Sensor Shift, Focus Pixel, Photonic Engine, Deep Fusion, Smart HDR 5",
    "Capteur photo frontal 1": "18MP, f/1,9, Grand angle, OIS",
    "Flash selfie": "Flash écran",
    "Fonction de l'appareil photo frontal": "Autofocus à détection de phase (PDAF)",
    "Enregistrement vidéo de l'appareil photo frontal": "4K (60/30/25/24fps), Full HD (120/60/30/25fps)",
    "Mémoire vive (RAM)": "12 Go",
    "Capacité de stockage": "256 Go",
    "Fabricant du processeur": "Apple",
    "Famille de processeur": "A19 Pro",
    "Cœur de processeur": "Hexa-Core",
    "Carte SIM": "eSIM",
    "Carte mémoire": "Mémoire non extensible",
    "Capteurs": "Capteur de proximité, Accéléromètre (G-Sensor), Gyroscope, Magnétomètre, Baromètre, Capteur de luminosité",
    "Localisation": "GPS, A-GPS, GLONASS, BeiDou, Galileo, QZSS, NavIC",
    "Caractéristiques audio": "Haut-parleur stéréo",
    "Système d'exploitation": "iOS 26",
    "Système d'exploitation installé": "iOS 26",
    "Fonctions IA": "Apple Intelligence, Recherche d'objets dans les images, Résumé d'informations, Amélioration des prises de vue, Retouches génératives",
    "IA intégrée": "Visual Intelligence",
    "Réseau": "5G, 4G, 3G, 2G",
    "Communications mobiles large bande": "EDGE (2.75G), GPRS (2.5G), GSM (2G), LTE (4G), WCDMA (3G + HDSPA), UMTS (3G), SA, NSA, SUB6, HSPA (3G+)",
    "Connexion locale": "Ultra large bande (ULB), Bluetooth, Wi-Fi, Wi-Fi Dual Band, NFC",
    "Standards Wi-Fi": "Wi-Fi 1 (b), Wi-Fi 2 (a), Wi-Fi 3 (g), Wi-Fi 4 (n), Wi-Fi 5 (ac), WiFi 6e, WiFi 7",
    "Bandes de fréquence Wi-Fi": "2,4 GHz, 5 GHz",
    "Version Bluetooth": "6.0",
    "Raccordement": "USB-C",
    "Standards USB": "2.0, DisplayPort",
    "Format": "Téléphone monobloc",
    "Couleur": "Or",
    "Matière du corps": "Verre renforcé",
    "Caractéristiques du boîtier": "Étanche à l'eau, Étanche à la poussière",
    "Étanchéité": "Jusqu'à 6,0 m pendant 30 min",
    "Indice de protection": "IP68",
    "Boutons": "Réglage du volume, Marche/arrêt, Appareil photo, Fonctions",
    "Poids": "165 g",
    "Hauteur": "156,2 mm",
    "Largeur": "74,7 mm",
    "Épaisseur": "5,6 mm",
    "Capacité de la batterie": "3 149 mAh",
    "Propriétés de la batterie": "Batterie non amovible, Charge rapide, Chargement sans fil, MagSafe",
    "Temps de charge de la batterie": "50 % en 30 min",
    "Spécifications du courant de charge": "20W Wireless Charging",
    "Lecture vidéo": "Jusqu'à 27 heures",
    "Lecture audio": "Jusqu'à 80 heures",
    "Accessibilité": "Mode une main, Appels mains libres, Compatible appareils auditifs, Commande vocale, Mode TTY, Vibreur",
    "Sécurité intégrée": "Reconnaissance faciale",
    "Compris dans la livraison": "Câble USB, Mode d'emploi"
  },
  "pros_cons": {
    "Points forts": [
      "Qualité de l'écran ProMotion",
      "Construction haut de gamme en titane",
      "Processeur A19 Pro puissant",
      "Performances du capteur",
      "Une sensation futuriste dans la main",
      "Excellente qualité de fabrication",
      "Écran vif de 3000 nits",
      "Vitesse impressionnante au quotidien"
    ],
    "Points faibles": [
      "Absence d'objectif ultra-grand angle",
      "Fragile sans étui",
      "Pas de zoom optique adéquat",
      "Port USB 2.0 lent"
    ]
  },
  "tags": [
    {
      "url": "https://www.idealo.fr/cat/19116F9730134/smartphones.html",
      "name": "12 Go"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F3163038/smartphones.html",
      "name": "Or"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F4655449/smartphones.html",
      "name": "256 Go"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F4521923/smartphones.html",
      "name": "Batterie non amovible"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F10125180/smartphones.html",
      "name": "USB-C"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F1828062/smartphones.html",
      "name": "Apple iPhone"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F4521925/smartphones.html",
      "name": "Chargement sans fil"
    },
    {
      "url": "https://www.idealo.fr/liste/121198039/apple-iphone-7-plus-256.html",
      "name": "Apple iPhone 7 Plus 256"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F7420293/smartphones.html",
      "name": "3 000 - 3 999 mAh"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F101713928/smartphones.html",
      "name": "6,5 pouces"
    },
    {
      "url": "https://www.idealo.fr/cat/19116F8380830/smartphones.html",
      "name": "eSIM"
    },
    {
      "url": "https://www.idealo.fr/liste/122314173/iphone-12-plus.html",
      "name": "iPhone 12 Plus"
    }
  ]
}
```

### 🎯 Use Cases

This actor is perfect for:

Dynamic pricing engines

Ecommerce dashboards

Marketplace integration

Supplier benchmarking

Product comparison tools

SEO content automation

Retail intelligence

Data reselling

Affiliate tracking

Product catalog enrichment

Dropshipping research

### ⚠ Limitations

Prices change frequently

Not all products have GTINs

Some offers may require location-specific domains

Merchant availability varies by country

Idealo may rate limit excessive requests

### ✅ Best Practices

✔ Use pagination URLs for bulk scraping
✔ Normalize price formats
✔ Use separate runs per country
✔ Cache product IDs
✔ Enable get_details selectively
✔ Store GTINs to deduplicate
✔ Rotate proxies for large runs

### 🛟 SUPPORT

Share your runs with the developer team and create issues on error to help us improve actor quality.

You might discover edge case we didn't test yet

We stay available anytime

# Actor input Schema

## `searchs` (type: `array`):

Idealo search url from any subdomain

## `urls` (type: `array`):

One product url per line. Is not used if a search url is also provided

## `max_page` (type: `integer`):

0 = no limit

## Actor input object example

```json
{
  "searchs": [],
  "urls": [
    "https://www.idealo.fr/prix/202836513/garmin-epix-pro-gen-2-standard-51mm-slate-gray-black-band.html",
    "https://www.idealo.fr/prix/202090009/bosch-kgn49aibt.html"
  ],
  "max_page": 1
}
```

# Actor output Schema

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

No description

# 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 = {
    "searchs": [],
    "urls": [
        "https://www.idealo.fr/prix/202836513/garmin-epix-pro-gen-2-standard-51mm-slate-gray-black-band.html",
        "https://www.idealo.fr/prix/202090009/bosch-kgn49aibt.html"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("saswave/idealo-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 = {
    "searchs": [],
    "urls": [
        "https://www.idealo.fr/prix/202836513/garmin-epix-pro-gen-2-standard-51mm-slate-gray-black-band.html",
        "https://www.idealo.fr/prix/202090009/bosch-kgn49aibt.html",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("saswave/idealo-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 '{
  "searchs": [],
  "urls": [
    "https://www.idealo.fr/prix/202836513/garmin-epix-pro-gen-2-standard-51mm-slate-gray-black-band.html",
    "https://www.idealo.fr/prix/202090009/bosch-kgn49aibt.html"
  ]
}' |
apify call saswave/idealo-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,saswave/idealo-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/7Uswao3OaxIoJoucy/builds/rIjubJnrnBKNF8h89/openapi.json
