# Gaspedaal Cars Search Scraper (`stealth_mode/gaspedaal-cars-search-scraper`) Actor

Automate extraction of Dutch car listings from Gaspedaal.nl. Capture vehicle details, pricing, photos, dealer information, and availability status. Ideal for automotive market analysis, inventory monitoring, and competitive intelligence in the Netherlands car market.

- **URL**: https://apify.com/stealth\_mode/gaspedaal-cars-search-scraper.md
- **Developed by:** [Stealth mode](https://apify.com/stealth_mode) (community)
- **Categories:** Automation, Developer tools, E-commerce
- **Stats:** 14 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$20.00/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#rental-actors

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Gaspedaal.nl Cars Search Scraper: Extract Dutch Automotive Listings Data

### Understanding Gaspedaal.nl and Its Value

Gaspedaal.nl serves as a comprehensive Dutch automotive marketplace, aggregating listings from dealerships, private sellers, and automotive professionals across the Netherlands. The platform features new and used vehicles spanning all categories—from compact city cars to luxury SUVs and commercial vehicles.

For car dealerships monitoring competition, automotive analysts tracking pricing trends, or buyers researching the Dutch market, Gaspedaal data delivers critical insights. Manual extraction across multiple searches and filters is time-consuming. This scraper automates the process, converting search results into structured datasets ready for analysis.

### What This Scraper Extracts

The scraper processes Gaspedaal search result pages, capturing multiple vehicle listings efficiently. Perfect for building comprehensive datasets across different vehicle types, price ranges, or dealer inventories.

**Key Data Extracted:**

**Vehicle Identification:** Ad ID and license plate enable unique tracking and verification of specific vehicles.

**Pricing Data:** Price field provides core financial information for market analysis and comparison.

**Visual Documentation:** Photos array and media objects deliver comprehensive visual assets. Video count indicates multimedia presentations.

**Provider Information:** Provider field identifies listing sources—dealerships, importers, or private sellers—crucial for competitive intelligence.

**Listing Metadata:** Date posted tracks listing freshness. URL provides direct access to full details.

**Availability Tracking:** Availability status and status slug indicate current vehicle availability (available, sold, reserved).

**Vehicle Specifications:** Car data object contains detailed specifications including make, model, year, mileage, fuel type, and features.

**Platform Distribution:** Portals field shows which automotive platforms carry the listing, revealing marketing reach.

### Input Configuration

The scraper processes Gaspedaal search result URLs with configurable extraction parameters.

**Example Configuration:**

```json
{
  "proxy": {
    "useApifyProxy": false
  },
  "max_items_per_url": 20,
  "ignore_url_failures": true,
  "urls": [
    "https://www.gaspedaal.nl/zoeken?trefw=suv&srt=df-a&page=2"
  ]
}
```

#### Example Screenshot:

![](https://i.ibb.co/rKqTX3rK/Screenshot-from-2025-12-31-10-44-32.png)

**Parameter Breakdown:**

**proxy:** Set `useApifyProxy: false` by default. Enable for large-scale scraping to avoid detection. Small-scale operations typically don't require proxies.

**max\_items\_per\_url:** Controls listings extracted per URL. Set to 20 for standard pages. Gaspedaal displays 20-30 vehicles per page typically.

**ignore\_url\_failures:** When `true`, continues processing if individual URLs fail. Essential for batch operations with multiple search URLs.

**urls:** Gaspedaal search result page URLs. Include multiple URLs for different searches, filters, or pagination.

**URL Structure:** The example URL searches for SUVs (`trefw=suv`) sorted by date descending (`srt=df-a`) on page 2 (`page=2`). Perform manual searches first to configure filters (vehicle type, price range, location), then copy URLs.

### Output Structure and Field Meanings

**Availability Status:** Current vehicle availability (Available, Sold, Reserved). Critical for inventory management and identifying sold vehicles.

**Availability Status Slug:** Machine-readable availability identifier for filtering and automation.

**Photos:** Array of vehicle images. Essential for visual assessment, listing quality evaluation, and display purposes.

**Media:** Comprehensive media object containing photos, videos, and other visual assets with metadata.

**Video Count:** Number of video presentations. Indicates premium listings with enhanced marketing.

**Date Posted:** Listing creation timestamp. Tracks listing age and market velocity—vehicles selling quickly indicate high demand.

**Provider:** Dealer or seller information including name, location, and contact details. Enables competitive analysis and source tracking.

**Car Data:** Detailed specifications object containing:

- Make and model
- Year and mileage
- Fuel type and transmission
- Engine specifications
- Features and equipment
- Body type and color
- Technical details

**Portals:** Array of platforms where listing appears (AutoTrack, AutoScout24, etc.). Reveals marketing strategy and reach.

**Ad ID:** Unique listing identifier for tracking, deduplication, and database management.

**Price:** Vehicle price in euros. Core metric for market analysis and valuation.

**License Plate:** Dutch license plate number. Enables vehicle history verification and ownership tracking through RDW (Netherlands Vehicle Authority).

**URL:** Direct link to full listing page for accessing complete information and verification.

**Sample Output Structure:**

```json
[
  {
  "availability_status": "beschikbaar",
  "photos": {
    "foto_origineel": "https://media-gaspedaal.export.dv.nl/20378941759/foto.jpg",
    "foto_groot": "https://cdn.gaspedaal.nl/images/small/b70518aee3e1cc806d871d0f16283630339162a2.jpg?source=https://media-gaspedaal.export.dv.nl/20378941759/foto.jpg",
    "foto_xxl": "https://cdn.gaspedaal.nl/images/large/483ec69241fd76de00d44b8c11197b6df4c2e6fe.jpg?source=https://media-gaspedaal.export.dv.nl/20378941759/foto.jpg",
    "foto_klein": "https://cdn.gaspedaal.nl/images/small/b70518aee3e1cc806d871d0f16283630339162a2.jpg?source=https://media-gaspedaal.export.dv.nl/20378941759/foto.jpg",
    "foto_xl": "https://cdn.gaspedaal.nl/images/medium/9e5f9c58fc831005efa00b1fd3c170fa3b233f53.jpg?source=https://media-gaspedaal.export.dv.nl/20378941759/foto.jpg"
  },
  "date_posted": "2025-12-16T02:41:33.000Z",
  "provider": {
    "aanbieder_id": 5396,
    "aanbiedergegevens": {
      "website": "/autobedrijven/louwman-exclusive-cars-b-v/aanbod",
      "plaatsnaam_slug": "utrecht",
      "provincie_hulpwaarde": "UT",
      "provincie_slug": "utrecht",
      "naamsvermelding": "Louwman Exclusive Cars B.V.",
      "plaatsnaam": "Utrecht",
      "naam": "Louwman Exclusive Cars B.V.",
      "provincie": "Utrecht"
    },
    "soort_slug": "universeel-autobedrijf",
    "soort": "UNIVERSEEL_AUTOBEDRIJF"
  },
  "car_data": {
    "motor": {
      "vermogen_pk": 557.058,
      "vermogen_kw": 409
    },
    "algemeen": {
      "model_slug": "grecale",
      "merk_slug": "maserati",
      "carrosserievorm_slug": "suv",
      "carrosserievorm": "SUV",
      "brandstofsoort": "ELEKTRICITEIT",
      "voertuigsoort": "PERSONENAUTO",
      "merk_id": "109",
      "kleur_slug": "blauw",
      "brandstofsoort_slug": "elektriciteit",
      "transmissietype": "AUTOMATISCH",
      "modelnaam": "Grecale",
      "kleur": "BLAUW",
      "aantal_deuren": 5,
      "voertuigsoort_slug": "personenauto",
      "model_id": "5218",
      "merknaam": "Maserati",
      "transmissietype_slug": "automatisch",
      "uitvoering": "Folgore | Climate Package Plus | 360 Surround View Camera | "
    },
    "milieu": {
      "energielabel_slug": "a-label",
      "energielabel": "A-label"
    },
    "geschiedenis": {
      "kilometerstand_correct": false,
      "kilometerstand": 40,
      "datum_eerste_toelating_internationaal": "2025-07-02T00:00:00.000Z",
      "btw_verrekenbaar": true,
      "bouwjaar": 2025
    }
  },
  "portals": [
    {
      "site_nr": 19,
      "verkoper_nr": 5396,
      "portaal_beschrijving": "Dealersite",
      "occ_import_nr": 191988855,
      "klik_url": "https://api.gaspedaal.nl/redirect/vehicle/191988855",
      "portaal_logo_url": "",
      "tip": true,
      "prijs": 117950,
      "portaal_type": "dealer",
      "portaal_foto_url": "https://www.gaspedaal.nl/images/automotive/portals/logo/dealersites-small.png"
    },
    {
      "site_nr": 2,
      "verkoper_nr": 57673,
      "portaal_beschrijving": "AutoTrack",
      "occ_import_nr": 181027298,
      "klik_url": "https://api.gaspedaal.nl/redirect/vehicle/181027298",
      "portaal_logo_url": "",
      "tip": true,
      "prijs": 117950,
      "portaal_type": "other",
      "portaal_foto_url": "https://www.gaspedaal.nl/images/automotive/portals/logo/autotrack-small.png"
    },
    {
      "site_nr": 96,
      "verkoper_nr": 0,
      "portaal_beschrijving": "NationaleAutolease",
      "occ_import_nr": 182376654,
      "klik_url": "https://api.gaspedaal.nl/redirect/vehicle/182376654",
      "portaal_logo_url": "",
      "tip": false,
      "prijs": 117950,
      "portaal_type": "financial",
      "portaal_foto_url": "https://www.gaspedaal.nl/images/automotive/portals/logo/nationaleautolease-small.png"
    },
    {
      "site_nr": 73,
      "verkoper_nr": 0,
      "portaal_beschrijving": "ROS finance",
      "occ_import_nr": 192141036,
      "klik_url": "https://api.gaspedaal.nl/redirect/vehicle/192141036",
      "portaal_logo_url": "",
      "tip": false,
      "prijs": 117950,
      "portaal_type": "financial",
      "portaal_foto_url": "https://www.gaspedaal.nl/images/automotive/portals/logo/ros-finance-small.png"
    }
  ],
  "ad_id": 124157026,
  "price": {
    "totaal": 117950,
    "totaal_inclusief_btw": 117950
  },
  "license_plate": "HVP12Z",
  "availability_status_slug": "beschikbaar",
  "media": {
    "video_urls": [],
    "vr_photo_urls": [],
    "photos": []
  },
  "url": "https://www.autotrack.nl/a/maserati-grecale-elektriciteit-2025-124157026",
  "video_count": 0,
  "from_url": "https://www.gaspedaal.nl/zoeken?trefw=suv&srt=df-a"
}
]
```

### Step-by-Step Implementation

**1. Define Target Vehicles:** Identify needed vehicle types, price ranges, or geographic areas. Test searches on Gaspedaal to verify filters return relevant results.

**2. Collect Search URLs:** Perform manual searches with desired filters (SUV, electric, price under €30k, etc.). Copy resulting URLs including pagination URLs for comprehensive coverage.

**3. Configure Input:** Set up JSON with URLs. Adjust `max_items_per_url` (20 standard, higher for thorough extraction). Enable `ignore_url_failures` for resilience.

**4. Launch Scraper:** Execute via Apify console. Monitor progress. Typical processing: 3-5 pages complete in 2-3 minutes.

**5. Validate Data:** Verify critical fields populated correctly—prices, availability status, vehicle specifications.

**6. Export and Analyze:** Export as JSON/CSV/Excel. Deduplicate by ad ID. Filter by criteria (price, availability, dealer).

**7. Handle Pagination:** For large datasets, include multiple page URLs: `page=1`, `page=2`, etc.

### Strategic Applications

**Dealer Competitive Intelligence:** Monitor competitor inventories, pricing strategies, and listing quality. Track which dealers dominate specific vehicle segments.

**Market Price Analysis:** Aggregate pricing across makes, models, years, and mileage. Calculate average prices and identify undervalued opportunities.

**Inventory Turnover Tracking:** Monitor date posted and availability status changes to understand market velocity. Identify fast-moving vs. slow-moving segments.

**Geographic Market Analysis:** Analyze provider locations to understand regional inventory distribution and pricing variations across Dutch provinces.

**Marketing Strategy Assessment:** Evaluate portals usage to understand multi-platform marketing approaches. Track video content adoption and photo quality trends.

**Vehicle Sourcing:** Filter by specifications and price to identify acquisition opportunities for dealers or rental companies.

**Trend Identification:** Track fuel type distributions (electric vs. diesel vs. hybrid) to understand market transitions toward sustainability.

### Advanced Techniques

**Time-Series Price Tracking:** Scrape weekly, storing data with timestamps. Track individual vehicle price reductions by matching ad IDs—identifying negotiation opportunities.

**Dealer Performance Benchmarking:** Aggregate by provider to analyze inventory sizes, average prices, listing quality (photo/video counts), and portfolio composition.

**Mileage-Price Correlation:** Analyze car data to quantify depreciation rates by make/model. Build predictive models for vehicle valuation.

**License Plate Verification:** Cross-reference plates with RDW databases to verify vehicle history, ownership, and technical specifications.

**Multi-Platform Comparison:** Use portals field to identify vehicles listed across multiple sites. Compare pricing and descriptions for consistency.

**Availability Flow Analysis:** Track status changes from "available" to "sold" to measure listing-to-sale duration by vehicle type and price range.

**Image Quality Assessment:** Analyze photo counts and video presence to correlate visual presentation quality with sale velocity.

### Best Practices

**Scraping Frequency:** Dutch automotive market updates daily. Weekly scraping balances freshness with efficiency. Daily scraping suits competitive monitoring.

**Data Validation:** Verify prices are positive, license plates match Dutch format (XX-XXX-XX variants), and dates are logical. Flag anomalies.

**Privacy Compliance:** License plates and contact information are personal data under GDPR. Handle securely and use only for legitimate business purposes.

**Duplicate Management:** Use ad ID for deduplication across scrapes. Vehicles may appear in multiple searches.

**Currency Consistency:** Prices in euros. Note scrape dates for inflation adjustment in long-term analysis.

**Status Monitoring:** Prioritize "available" status listings for active opportunities. Archive "sold" listings for market velocity analysis.

**Quality Checks:** Validate car data completeness—essential fields like make, model, year should be populated. Flag incomplete listings.

### Conclusion

The Gaspedaal.nl Cars Search Scraper transforms the Netherlands' automotive marketplace into actionable intelligence. From pricing dynamics to inventory trends and competitive positioning, this tool delivers comprehensive insights into the Dutch car market. Whether managing dealer inventory, conducting market research, or identifying acquisition opportunities, structured Gaspedaal data provides the foundation for informed automotive decisions in the Netherlands market.

# Actor input Schema

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

Add the URLs of the Cars list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.

## `ignore_url_failures` (type: `boolean`):

If true, the scraper will continue running even if some URLs fail to be scraped.

## `max_items_per_url` (type: `integer`):

The maximum number of items to scrape per URL.

## `proxy` (type: `object`):

Select proxies to be used by your scraper.

## Actor input object example

```json
{
  "urls": [
    "https://www.gaspedaal.nl/zoeken?trefw=suv&srt=df-a"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20,
  "proxy": {
    "useApifyProxy": false
  }
}
```

# 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 = {
    "urls": [
        "https://www.gaspedaal.nl/zoeken?trefw=suv&srt=df-a"
    ],
    "ignore_url_failures": true,
    "max_items_per_url": 20,
    "proxy": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("stealth_mode/gaspedaal-cars-search-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 = {
    "urls": ["https://www.gaspedaal.nl/zoeken?trefw=suv&srt=df-a"],
    "ignore_url_failures": True,
    "max_items_per_url": 20,
    "proxy": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("stealth_mode/gaspedaal-cars-search-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "urls": [
    "https://www.gaspedaal.nl/zoeken?trefw=suv&srt=df-a"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20,
  "proxy": {
    "useApifyProxy": false
  }
}' |
apify call stealth_mode/gaspedaal-cars-search-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=stealth_mode/gaspedaal-cars-search-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/OBGO3KjGjq5J0yqXl/builds/ITBF7jWSa4MIShEK1/openapi.json
