Oscaro Products Scraper avatar

Oscaro Products Scraper

Pricing

from $2.99 / 1,000 products

Go to Apify Store
Oscaro Products Scraper

Oscaro Products Scraper

Scrape Oscaro car parts by name or OE reference: price, RRP, EAN, brand, stock, promotions, cross-references, TecDoc specs and vehicle fitment count. France, Belgium, Spain, Portugal.

Pricing

from $2.99 / 1,000 products

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Categories

Share

Oscaro Products Scraper

Oscaro Products Scraper extracts car parts from Oscaro, the French online car parts shop, by part name or OE / manufacturer reference: price, recommended retail price, promotions, stock, brand, reference, EAN, images and cross-references. Detail mode adds the full specifications table and how many vehicle types each part fits. Export the data as JSON, CSV or Excel.

Search oscaro.com, oscaro.be, oscaro.es or oscaro.pt in the shop's own language, filter by brand, TecDoc part type, stock, promotion or universal fit, and get more than 1,000 products from a single search for price monitoring, catalog building and OE cross-reference lookups.

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

Apify Actor: parsebird/oscaro-products-scraper. Scrapes the Oscaro car parts catalog (oscaro.com France, oscaro.be Belgium, oscaro.es Spain, oscaro.pt Portugal) by part name or OE/manufacturer reference. Call via ApifyClient: client.actor("parsebird/oscaro-products-scraper").call(run_input={"queries": ["plaquette de frein", "GDB1330"], "scrapeMode": "overview", "maxResults": 50}). Inputs: queries (array of strings: part names in the shop language or references such as GDB1330; optional when brand or genartId is set), scrapeMode ("overview" default | "detail": adds specs and vehicle_type_count), country ("fr" default | "be" | "es" | "pt"), maxResults (integer, default 100, total across all queries, shared evenly between queries; more than 1,000 per query is supported), brand (string, comma-separated manufacturer names such as BOSCH, VALEO; case-insensitive), genartId (string, comma-separated TecDoc part-type ids such as 402), available (boolean: in stock only), promo (boolean: on promotion only), universal (boolean: universal parts only). Output fields: item_id, productTitle, url, source, reference, search_reference, ean, brand, brand_id, brand_logo, genart_id, part_type, category, sub_category, price, raw_price, public_price, consign_price, currency, tax_rate, on_promotion, promotion_percentage, promotion_start_date, promotion_end_date, thumbnail, images, available, sold_as_pack, boxes_count, universal, country, equivalent_references [{manufacturer, references[]}], equivalent_references_count, search_query, scrapedAt; detail mode adds specs (object label -> value) and vehicle_type_count. Pricing: pay per product (overview) or per detail product (detail). Full API spec: https://apify.com/parsebird/oscaro-products-scraper/api. Get your token: https://console.apify.com/settings/integrations.

What is Oscaro Products Scraper?

Oscaro sells more than a million car parts from hundreds of brands, including BOSCH, VALEO, TRW, BREMBO and FEBI BILSTEIN, with shops in France, Belgium, Spain and Portugal. Each part has a price, a recommended retail price, a stock status and a list of equivalent OE and aftermarket references.

Oscaro Products Scraper turns that catalog into a dataset. Enter a part name such as plaquette de frein or a reference such as GDB1330, press Start, and get every matching product with its price, brand, reference, EAN and cross-references. It works as an Oscaro API alternative for price monitoring, competitor analysis and parts catalog enrichment. No Oscaro account is needed.

What can Oscaro Products Scraper do?

  • 🔎 Search by part name or reference. Enter part names in the shop's language, or OE and manufacturer references such as GDB1330 or 0 986 494 027.
  • 🌍 Four Oscaro shops. Search France (oscaro.com), Belgium (oscaro.be), Spain (oscaro.es) or Portugal (oscaro.pt), with each shop's own prices and labels.
  • 🏷️ Filters. Limit results to one or more brands or TecDoc part types, in-stock products, products on promotion, or universal parts.
  • 📦 Whole-brand exports. Leave the search empty and set a brand or part type to list that brand's or part type's catalog.
  • 📈 More than 1,000 results per search. Large result sets are split by brand and part type, so one search can return thousands of products.
  • 🔁 Cross-references. Every product lists its equivalent references, grouped by manufacturer, for OE-to-aftermarket lookups.
  • 📋 Detail mode. Adds the full specifications table (dimensions, material, fitting position…) and how many vehicle types the part fits.
  • 📅 Scheduling and integrations. Run daily with Apify Schedules and send results to Google Sheets, Slack, Zapier, Make or a webhook with Apify integrations.
  • 🔌 API access. Start runs and read results from your own code with the Apify API, in JSON, CSV, Excel, XML or HTML.

What data can you extract from Oscaro?

FieldDescription
item_idOscaro article id, the unique id of the part
productTitle / part_typePart name, such as Jeu de 4 plaquettes de frein
brand, brand_id, brand_logoManufacturer name, Oscaro manufacturer id and logo
reference / search_referenceManufacturer reference as shown (0 986 494 027) and without spaces (0986494027)
eanEAN barcode
genart_idTecDoc generic article (part type) id
category / sub_categoryCategory and sub-category, such as Freinage › Plaquettes de frein
priceCurrent price, VAT included
raw_pricePrice before promotion, VAT included
public_priceRecommended retail price, VAT included
consign_priceRefundable core deposit (consigne), if any
currency, tax_rateCurrency (EUR) and VAT rate in %
on_promotion, promotion_percentage, promotion_start_date, promotion_end_dateCurrent promotion and its dates
availableWhether the product is in stock
sold_as_pack, boxes_count, universalPack, number of boxes and universal-fit flags
thumbnail, imagesProduct image, small and large
urlProduct page on Oscaro
equivalent_referencesEquivalent references: [{manufacturer, references[]}]
equivalent_references_countTotal number of equivalent references
specsDetail mode: specifications table as label → value
vehicle_type_countDetail mode: number of vehicle types the part fits (0 for universal parts)
search_query, source, country, scrapedAtSearch that found the product, scrape mode, shop and scrape time

How to scrape Oscaro

  1. Open Oscaro Products Scraper in Apify Console.
  2. Enter one or more Search queries, such as plaquette de frein or GDB1330.
  3. Pick the Scrape mode: Overview for price and stock data, or Detail to add specifications and vehicle fitment counts.
  4. Pick the Oscaro site if you want Belgium, Spain or Portugal instead of France.
  5. Optionally set a Brand, Part-type ID or the stock, promotion and universal filters.
  6. Set Maximum products and click Start.
  7. Download the results from the Output tab as JSON, CSV, Excel, XML or HTML, or read them through the API.

Input parameters

ParameterTypeRequiredDefaultDescription
queriesarrayNo*—Part names or OE / manufacturer references, one per line
scrapeModestringNooverviewoverview or detail (adds specs and vehicle_type_count)
countrystringNofrOscaro shop: fr, be, es or pt
maxResultsintegerNo100Maximum products across all searches, shared evenly between queries
brandstringNo—Manufacturer name, such as BOSCH; separate several with commas
genartIdstringNo—TecDoc part-type id, such as 402; separate several with commas
availablebooleanNofalseIn-stock products only
promobooleanNofalseProducts on promotion only
universalbooleanNofalseUniversal parts only

* Add at least one search query, or a brand or part-type filter.

Example input:

{
"queries": ["plaquette de frein", "disque de frein"],
"scrapeMode": "detail",
"brand": "BOSCH",
"available": true,
"maxResults": 200
}

Output example

A detail-mode record (cross-references and specs shortened):

{
"thumbnail": "https://oscaro.media/catalog/images/oscjpg/normal/30/1457429238_1.jpg",
"item_id": "213933",
"productTitle": "Filtre à huile",
"url": "https://www.oscaro.com/filtre-a-huile-bosch-1-457-429-238-213933-7-p",
"source": "detail",
"reference": "1 457 429 238",
"search_reference": "1457429238",
"ean": "3165143543887",
"brand": "BOSCH",
"brand_id": "30",
"brand_logo": "https://oscaro.media/mu/suppliers/manufacturer/png/0030001.png",
"genart_id": "7",
"part_type": "Filtre à huile",
"category": "Filtres et huile",
"sub_category": "Filtres",
"price": 9.98,
"raw_price": 9.98,
"public_price": 19.32,
"consign_price": 0.0,
"currency": "EUR",
"tax_rate": 20.0,
"on_promotion": false,
"promotion_percentage": null,
"promotion_start_date": null,
"promotion_end_date": null,
"images": ["https://oscaro.media/catalog/images/oscjpg/zoom/30/1457429238_1.jpg"],
"available": true,
"sold_as_pack": false,
"boxes_count": 1,
"universal": false,
"country": "fr",
"equivalent_references": [
{ "manufacturer": "SogefiPro", "references": ["FA5670", "FA5670AECO"] },
{ "manufacturer": "CROSLAND", "references": ["2256"] }
],
"equivalent_references_count": 92,
"specs": {
"type": "Cartouche papier",
"diamètre extérieur": "65,00",
"diamètre intérieur": "26,00",
"Hauteur": "100,00 mm"
},
"vehicle_type_count": 936,
"search_query": "filtre a huile",
"scrapedAt": "2026-10-25T12:55:42.532Z"
}

Overview records have the same fields without specs and vehicle_type_count.

Use cases

  • Price monitoring. Track Oscaro prices, promotions and recommended retail prices for the parts you sell, on a daily schedule.
  • Competitor analysis. Compare brands and price levels within a part type, such as all brake pad sets (genartId 402).
  • Cross-reference lookups. Find the aftermarket equivalents of an OE reference, or the OE numbers behind an aftermarket part.
  • Catalog enrichment. Add EANs, images, specifications and categories to your own parts catalog.
  • Stock tracking. Watch which products go in and out of stock with the In stock only filter or the available field.

How it works

  1. Each search query is run against the product search of the Oscaro shop you picked, with your filters applied.
  2. When a search matches more than 1,000 products and you asked for more, the results are split by brand and then by part type, so each part can be read in full.
  3. Each product is saved once per run, even if several queries find it.
  4. In detail mode, the specifications table is added, and the vehicle fitment lists are counted to give vehicle_type_count.

How much does it cost to scrape Oscaro?

Oscaro Products Scraper uses pay-per-event pricing. You pay for each product saved. Overview mode charges a product event, and detail mode charges a detail event instead. Compute and proxy usage are included in the event price and are not billed separately.

EventApify planPrice per eventPrice per 1,000
product (overview)Free$0.00499$4.99
product (overview)Bronze$0.00399$3.99
product (overview)Silver$0.00349$3.49
product (overview)Gold$0.00299$2.99
detail (detail)Free$0.01099$10.99
detail (detail)Bronze$0.00999$9.99
detail (detail)Silver$0.00899$8.99
detail (detail)Gold$0.00799$7.99

For example, 1,000 products in overview mode cost $4.99 on the Free plan, and the default prefill run of 50 products costs about $0.25. Apify's Free plan includes $5 of platform usage every month. Set a maximum cost per run in Console and the scraper stops when it is reached.

Use the scraper with Python and JavaScript

Python (pip install apify-client):

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("parsebird/oscaro-products-scraper").call(run_input={
"queries": ["plaquette de frein"],
"brand": "BOSCH",
"available": True,
"maxResults": 200,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["reference"], item["price"], item["public_price"], item["url"])

JavaScript (npm install apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('parsebird/oscaro-products-scraper').call({
queries: ['GDB1330'],
scrapeMode: 'detail',
maxResults: 50,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => console.log(item.brand, item.reference, item.price, item.vehicle_type_count));

See the API tab for every endpoint, or the Apify API client docs for more options.

Oscaro Products Scraper collects only public product information that Oscaro shows to every visitor: product names, prices, stock status, references and specifications. It doesn't log in, and it doesn't collect personal data. Check Oscaro's terms of use for how you plan to use the data, and if you are unsure, consult a lawyer. Read more in Apify's post Is web scraping legal?

Other ParseBird automotive scrapers

ActorWhat it does
Bid.cars ScraperCopart and IAAI auction lots with VIN, damage and prices
Otomoto.pl Scraper with ContactsPolish car listings with prices, specs and seller contacts
AutoTrader.co.uk ScraperUK car listings from AutoTrader
AutoTrader Canada Scraper (AutoTrader.ca)Canadian car listings from AutoTrader.ca
che168 二手车 Autohome ScraperChinese used car listings from che168.com

FAQ

Which language should I search in? Use the language of the shop: French for France and Belgium (plaquette de frein), Spanish for Spain (pastillas de freno) and Portuguese for Portugal (pastilhas de travão). References such as GDB1330 work in every shop.

How many products can one search return? More than 1,000. When a search matches more products than that and you ask for more, the scraper splits it by brand and part type. maxResults is shared evenly between your queries, so with 2 queries and maxResults 100 each query gets up to 50 products, and any share a query doesn't use goes to the next one.

What is the difference between Overview and Detail? Both modes return price, stock, brand, reference, EAN, images and cross-references. Detail also adds the specifications table and vehicle_type_count, and is billed as a detail product.

Can I find the products that fit my car? Not yet. The scraper searches by part name, reference, brand and part type, and vehicle_type_count says how many vehicle types a part fits, but it doesn't filter by vehicle.

How do I find a part-type ID? Run a search once and look at the genart_id field of the parts you want. For example, 402 is brake pad sets on oscaro.com.

My brand filter returns nothing. Use the brand name as Oscaro writes it, such as BOSCH or FEBI BILSTEIN. Case doesn't matter. When a brand isn't found, the run log suggests close matches.

Can I schedule runs and send the results somewhere? Yes. Use Apify Schedules to run hourly, daily or weekly, and integrations to send results to Google Sheets, Slack, Zapier, Make, Airbyte or a webhook.

Something doesn't work. Where do I report it? Open an issue in the Issues tab. We read every report.