Bol Com Listings Extractor avatar

Bol Com Listings Extractor

Pricing

from $2.99 / 1,000 results

Go to Apify Store
Bol Com Listings Extractor

Bol Com Listings Extractor

Bol.com search scraper that pulls listings by keyword, with price, rating, reviews, brand, seller, and image, so you can run SEO research and track prices at scale.

Pricing

from $2.99 / 1,000 results

Rating

0.0

(0)

Developer

Kawsar

Kawsar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Bol.com Listings Extractor

Bol.com Listings Extractor reads product data from Bol.com search results so you don't have to copy anything by hand. Give it the keywords you want, choose the Netherlands or Belgium store, and it walks the result pages and collects what it finds: title, price, rating, reviews, brand, seller, the product link, and the image.

It's built for SEO and e-commerce research on Bol.com: keyword research, watching competitor prices, tracking how products rank for a term, and building out a product catalog.

What it does

  • Searches Bol.com by any keyword, the same text you'd type into the site's search box
  • Takes a list of keywords and scrapes each one separately
  • Works on the Netherlands (bol.com/nl) and Belgium (bol.com/be) marketplaces
  • Pages through results on its own until it hits your per-keyword item limit
  • Returns clean, structured rows ready for export or the API

Input

FieldTypeRequiredDescription
searchQueriesarray of stringsyesOne or more keywords, exactly as you'd type them into the Bol.com search box. Each keyword is scraped separately.
countryCodestringnonl for bol.com/nl or be for bol.com/be. Default nl.
maxItemsintegernoMaximum products to return per keyword. Default 100, max 1000. The actor keeps paging until it reaches this number or runs out of results.
requestTimeoutSecsintegernoPer-request timeout in seconds. Default 45.

Example input

{
"searchQueries": ["airco", "ventilator", "koelkast"],
"countryCode": "nl",
"maxItems": 100
}

With three keywords and maxItems: 100, the run returns up to 300 products, 100 for each keyword.

Output

Each product is one row in the dataset.

FieldDescription
searchQueryThe keyword this product was found for.
pageResult page the product appeared on.
positionRank of the product within the page.
productIdBol.com product identifier.
productTitleProduct name.
productUrlLink to the product page.
imageProduct image URL.
pricePrice as a number.
currencyCurrency code (EUR).
ratingAverage star rating, when shown.
reviewCountNumber of reviews, when shown.
brandBrand name, when shown.
sellerSeller name, when shown.
sponsoredWhether the listing is a sponsored result.
scrapedAtUTC timestamp of the scrape.

Example output

{
"searchQuery": "airco",
"page": 1,
"position": 1,
"productId": "9300000304596514",
"productTitle": "Silvergear Bureau Ventilator - Mini Bureauventilator - Wit",
"productUrl": "https://www.bol.com/nl/nl/p/.../9300000304596514/",
"image": "https://media.s-bol.com/gglV76KxX0or/vo0w4v5/550x550.jpg",
"price": 34.95,
"currency": "EUR",
"rating": 4.3,
"reviewCount": 91,
"brand": "Silvergear",
"seller": "Karsten Int",
"sponsored": true,
"scrapedAt": "2026-06-29T12:10:02.203581+00:00"
}

How to use

  1. Open the actor and add your keywords to Search keywords. Add as many as you like; each one is scraped on its own.
  2. Pick the marketplace, Netherlands or Belgium.
  3. Set Max items per keyword.
  4. Run it. Results stream into the dataset as the actor works through each page, so you can watch them arrive.

How pagination works

You don't set a page count. The actor starts on page 1 of the search results, reads every product on the page, then moves to the next page and repeats. It stops for a keyword when it has collected maxItems products or there are no more results to read. Then it moves on to the next keyword. Because the limit is per keyword, every keyword in a batch gets the same depth of coverage.

Exporting results

Download the dataset as JSON, CSV, Excel, XML, or HTML from the run's Storage tab, or pull it through the Apify API into your own dashboards and tools. The dataset has a built-in table view so you can scan results without exporting.

Use cases

  • Keyword research: see which products and brands rank for a search term, and how many sponsored listings sit at the top.
  • Price monitoring: schedule daily or weekly runs for the same keywords and watch how competitor prices move over time.
  • Catalog building: collect product titles, IDs, images, and links for a whole category in one pass.
  • Brand and seller tracking: find every listing tied to a brand or third-party seller for a search term.
  • Market and assortment analysis: measure rating distribution, review counts, and price ranges for a product type.

Running on a schedule

Set up an Apify Schedule to run the actor at a fixed interval (for example every morning). Combine it with a webhook or integration to push new results into Google Sheets, a database, Slack, or your BI tool. This turns a one-off scrape into an ongoing price and ranking monitor.

Tips

  • Use the exact words a shopper would type. Bol.com search is sensitive to spelling and language (Dutch keywords return the most relevant results).
  • Start with a small maxItems to preview the data shape, then raise it for a full pull.
  • Sponsored rows are flagged with sponsored: true so you can filter them out of organic ranking analysis.
  • Some fields (rating, reviewCount, brand, seller) are only present when Bol.com shows them on the card, so expect them to be empty for newer or sponsored listings.

Notes and limitations

  • Prices are read as they appear on the search results page and are for reference. Always confirm the live price on the product page before acting on it.
  • Bol.com may change its page layout at any time, which can affect extraction. If you spot missing fields, report it so the parser can be updated.
  • The actor reads public search result pages only. It does not log in, place orders, or access any account data.

FAQ

Can I scrape more than one keyword at a time? Yes. Add as many keywords as you want to Search keywords. Each is scraped separately and tagged with searchQuery in the output.

Does maxItems limit the whole run or each keyword? Each keyword. Ten keywords with maxItems: 50 returns up to 500 products, 50 per keyword.

Which marketplaces are supported? The Netherlands store (bol.com/nl) and the Belgium store (bol.com/be), selectable with countryCode.

What currency are prices in? Euro (EUR) for both marketplaces.