ParseForge Scrapers

BAUHAUS Product Scraper

parseforge/bauhaus-product-scraper

E-commerceAutomation

Scrape BAUHAUS (bauhaus.info) products from category and search pages: name, brand, price, price per unit, availability, online orderability, rating, reviews, specs, images and URL. No login. Export to CSV, JSON, Excel or XML.

Run this scraper See the API call
Total runs
35
Bookmarked
0
Last modified
2 days ago

This scraper was last updated on .

What does the BAUHAUS Product Scraper return?

ParseForge

🔨 BAUHAUS Product Scraper

Scrape BAUHAUS (bauhaus.info) products from any category or search page, up to a million rows per run. Every product comes back with its price, price per unit, availability, online orderability, rating and review count, technical specs, image gallery, category path and URL. Export to CSV, JSON, Excel, or XML.

BAUHAUS lists tens of thousands of tools, building materials, garden and home products in its German online shop. The site sits behind a Cloudflare check that stops plain HTTP tools, so this Actor drives a stealth browser, clears the check once, and then reads the same structured product data the shop itself loads. Paste a category or a search URL, or just type search terms, and get a clean dataset back.

Who uses it What they scrape BAUHAUS for
Pricing analysts Track DIY, tool and garden prices across BAUHAUS categories week over week.
E-commerce managers Monitor assortment, online orderability and in-store-only items against their own catalogue.
Data engineers Build a structured BAUHAUS product database with specs, images and category paths.

📋 What the BAUHAUS Product Scraper does

  • 🔗 Category and search URLs: any bauhaus.info/.../c/<id> category page or bauhaus.info/search?q= results page, filters and sort included.
  • 🔍 Search terms: type keywords and the Actor runs each search on bauhaus.info for you.
  • 📄 Every page: walks the whole listing, 36 products per page, until your Max Items limit is reached.
  • 💶 Prices the way BAUHAUS shows them: price, currency, sales unit and the price per kg, m, m² or litre where the shop prints one.
  • 📦 Availability: in stock, in-store only, plus whether the item can be ordered online or reserved in a store.
  • ⭐ Ratings and specs: average rating, review count, and the technical features BAUHAUS lists for each product.
  • 🖼 Images: the main image and the full gallery as direct CDN links.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

📊 Output

One row per product. Fields the source does not publish for a product hold Not Disclosed.

Field Description
🖼 imageUrl Main product image
📌 title Product name as shown on the listing
🔗 url Product page URL
🆔 productId BAUHAUS article number
🏷 brand Brand name
💶 price Price as a number
💱 currency ISO currency code (EUR)
⚖️ pricePerUnit Base price, for example 22.30 EUR/kg, when BAUHAUS prints one
📐 priceUnit Sales unit (Stück, m, m², l)
📦 availability In stock or In store only
🛒 onlineOrderable Yes or No
🏬 storeReservable Yes or No
⭐ rating Average rating out of 5
💬 reviewCount Number of ratings
🔤 typeDesignation Manufacturer model designation
🎨 variantCount Number of variants (sizes, grits, colours)
🗂 category Category the product belongs to
🧭 categoryPath Full category breadcrumb
🧾 specs Technical features as Name: Value strings
🖼 images Image gallery URLs
📄 sourceUrl Listing page the product was found on
📄 page Listing page number
#️⃣ rank Position on that page
🕒 scrapedAt ISO timestamp
❌ error null on success; error rows carry the URL and the reason

Three real records from a run over the Heißkleber category and a search for "bohrmaschine":

[
  {
    "imageUrl": "https://media.cdn.bauhaus/m/520387/prod_medium_square.webp",
    "title": "Pattex Klebepatronen (25 Stk., Durchmesser Klebepatrone: 11 mm)",
    "url": "https://www.bauhaus.info/heisskleber/pattex-klebepatronen/p/11342736",
    "productId": "11342736",
    "brand": "Pattex",
    "price": 11.15,
    "currency": "EUR",
    "pricePerUnit": "22.30 EUR/kg",
    "priceUnit": "Stück",
    "availability": "In stock",
    "onlineOrderable": "Yes",
    "storeReservable": "Yes",
    "rating": 5,
    "reviewCount": 5,
    "typeDesignation": "Not Disclosed",
    "variantCount": 3,
    "category": "Heißkleber",
    "categoryPath": "Produkte > Farben & Tapeten > Kleber > Haushaltskleber > Heißkleber",
    "specs": [
      "Farbe: Transparent",
      "Grundfarbe: Farblos",
      "Anwendungsbereich: Innen, Außen",
      "Geeignet für: Basteln, Dekorieren, Kleben, Haushalt, Hobby"
    ],
    "images": ["https://media.cdn.bauhaus/m/520387/prod_medium_square.webp"],
    "sourceUrl": "https://www.bauhaus.info/heisskleber/c/10000646",
    "page": 1,
    "rank": 1,
    "scrapedAt": "2026-09-07T22:23:55.906Z",
    "error": null
  },
  {
    "imageUrl": "https://media.cdn.bauhaus/m/1325044-2/prod_medium_square.webp",
    "title": "Bosch Professional Kombihammer GBH 2-28 F (880 W, 3,2 J, SDS-Plus-Aufnahme, Inkl. 3 x Bohrer & Meißel)",
    "url": "https://www.bauhaus.info/kombihaemmer/bosch-professional-kombihammer-gbh-2-28-f/p/25337437",
    "productId": "25337437",
    "brand": "Bosch Professional",
    "price": 239,
    "currency": "EUR",
    "pricePerUnit": "Not Disclosed",
    "priceUnit": "Stück",
    "availability": "In stock",
    "onlineOrderable": "Yes",
    "storeReservable": "Yes",
    "rating": 4.9,
    "reviewCount": 17,
    "typeDesignation": "GBH 2-28 F",
    "variantCount": 2,
    "category": "Kombihämmer",
    "categoryPath": "Produkte > Werkzeug & Maschinen > Maschinen > Bohrer & Schrauber > Bohrmaschinen > Kombihämmer",
    "specs": [
      "Bohrfutter/Werkzeugaufnahme Elektromaschine: SDS-Plus-Aufnahme",
      "Funktionen Elektromaschine: Drehstopp, Schlagstopp, Rechts-/Linkslauf, Schalterarretierung",
      "Verwendung Elektromaschine: Schrauben, Bohren, Schlagbohren, Meißeln",
      "BAUHAUS Garantie: 5 Jahre auf elektro- oder motorbetriebene Geräte",
      "Elektronisch: Ja",
      "Ausführungseigenschaft: Inkl. 3 x Bohrer & Meißel"
    ],
    "images": [
      "https://media.cdn.bauhaus/m/1325044/prod_medium_square.webp",
      "https://media.cdn.bauhaus/m/231252/prod_medium_square.webp",
      "https://media.cdn.bauhaus/m/161606/prod_medium_square.webp"
    ],
    "sourceUrl": "https://www.bauhaus.info/search?q=bohrmaschine",
    "page": 1,
    "rank": 7,
    "scrapedAt": "2026-09-07T22:23:59.825Z",
    "error": null
  },
  {
    "imageUrl": "https://media.cdn.bauhaus/m/243173/prod_medium_square.webp",
    "title": "Makita Akku-Schlagbohrschrauber HP333DSAP1 (12 V, 1 Akku, 2 Ah)",
    "url": "https://www.bauhaus.info/schlagbohrschrauber/makita-akku-schlagbohrschrauber-hp333dsap1/p/27284803",
    "productId": "27284803",
    "brand": "Makita",
    "price": 99,
    "currency": "EUR",
    "pricePerUnit": "Not Disclosed",
    "priceUnit": "Stück",
    "availability": "In store only",
    "onlineOrderable": "No",
    "storeReservable": "Yes",
    "rating": "Not Disclosed",
    "reviewCount": 0,
    "typeDesignation": "HP333DSAP1",
    "variantCount": 0,
    "category": "Schlagbohrschrauber",
    "categoryPath": "Produkte > Werkzeug & Maschinen > Maschinen > Bohrer & Schrauber > Schlagbohrschrauber",
    "specs": [
      "Anzahl Akkus: 1 Akku",
      "Ausstattung Elektromaschine: Ladezustandanzeige, Arbeitsleuchte",
      "Funktionen Elektromaschine: Drehmomenteinstellung, Überlastschutz",
      "Akkutyp: Li-Ionen",
      "Verwendung Elektromaschine: Bohren, Schrauben, Schlagbohren",
      "BAUHAUS Garantie: 5 Jahre auf elektro- oder motorbetriebene Geräte"
    ],
    "images": [
      "https://media.cdn.bauhaus/m/243173/prod_medium_square.webp",
      "https://media.cdn.bauhaus/m/206377/prod_medium_square.webp",
      "https://media.cdn.bauhaus/m/451753/prod_medium_square.webp"
    ],
    "sourceUrl": "https://www.bauhaus.info/search?q=bohrmaschine",
    "page": 1,
    "rank": 17,
    "scrapedAt": "2026-09-07T22:23:59.848Z",
    "error": null
  }
]

✨ Why choose this Actor

What you get
Works through the Cloudflare check A stealth browser clears bauhaus.info's security check once per session, then reads the shop's own structured data. No login, no API key.
The shop's own numbers Prices, base prices, orderability and ratings come from the same product feed the page loads, not from screen text.
Whole listings Category and search results are paged through automatically, 36 products per page, with duplicates removed.
Honest columns Anything BAUHAUS does not publish for a product says Not Disclosed instead of an empty cell.

📈 How it compares to alternatives

Feature ParseForge sian.agency Bauhaus Product Scraper studio-amba Bauhaus Scraper
Category URLs Yes Yes Yes
Search terms Yes Listed Yes
Price per unit Yes Not listed Not listed
Online orderable / store reservable Yes Not listed Not listed
Technical specs on listing rows Yes Detail rows only Not listed
Category breadcrumb Yes Not listed Not listed

🚀 How to use

  1. Create a free Apify account with $5 in credit.
  2. Open the BAUHAUS Product Scraper.
  3. Paste category or search URLs, or type search terms, set Max Items and a sort if you want one, then click Start.
  4. Download the results as CSV, Excel, JSON, or XML from the Dataset tab.

A first run with the defaults scrapes the Heißkleber category:

{
  "startUrls": [{ "url": "https://www.bauhaus.info/heisskleber/c/10000646" }],
  "maxItems": 10
}

A search sorted by price:

{
  "searchTerms": ["bohrmaschine", "akkuschrauber"],
  "sortBy": "price-asc",
  "maxItems": 500
}

A whole top-level category:

{
  "startUrls": [{ "url": "https://www.bauhaus.info/werkzeug-maschinen/c/10000090" }],
  "maxItems": 50000
}

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

💼 Business use cases

📊 Price monitoring. Schedule the scraper weekly on the categories you compete in and diff price and pricePerUnit by productId to catch price moves the day they happen.

📋 Assortment audits. Scrape a category and compare brand, typeDesignation and variantCount against your own range to find gaps and overlaps.

🏬 Channel analysis. onlineOrderable and storeReservable tell you which items BAUHAUS sells online and which are in-store only, per product.

🔍 Product data enrichment. Match by article number and pull specs, images and categoryPath into your own product information system.

🔌 Automating BAUHAUS Product Scraper

Trigger a run on a schedule or from another tool and route the dataset where you need it:

  • Make and Zapier: start a run and pass the CSV to Google Sheets, Airtable or an email.
  • Slack: post a summary when a run finishes.
  • Airbyte: load each dataset into your warehouse.
  • GitHub and Google Drive: archive the JSON export next to your analysis.

All of these use the Apify integrations page of the Actor.

🌟 Beyond business use cases

  • Research: study price dispersion and brand mix across DIY categories.
  • Personal: watch a wish list of tools for the moment they drop in price.
  • Non-profit: cost out community projects with live material prices.
  • Experimentation: feed a German-language product catalogue into a classifier or a recommender.

🤖 Ask an AI assistant about this scraper

Give an AI agent live access to BAUHAUS through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/bauhaus-product-scraper"

Then prompt it in plain language, for example "find the cheapest cordless drills on BAUHAUS with a rating above 4.5".

❓ Frequently Asked Questions

🔑 Do I need a BAUHAUS account or API key? No. The Actor reads public listing pages and the product feed those pages load.

🔗 Which URLs work? Category pages, whose address ends in /c/<number> (for example https://www.bauhaus.info/heisskleber/c/10000646), and search result pages such as https://www.bauhaus.info/search?q=bohrmaschine. Top-level categories like https://www.bauhaus.info/werkzeug-maschinen/c/10000090 work too. Product detail pages and other addresses are reported as an error row.

🔍 Can I just type search terms? Yes. Each term in Search Terms becomes a search on bauhaus.info. German terms match best because the catalogue is German.

📄 Does it handle pagination? Yes. It reads the product count on the first page, walks every page of the listing and stops at your Max Items.

🛡️ Why does the run start a browser? bauhaus.info challenges every visitor with a Cloudflare check that plain HTTP tools cannot pass. A stealth browser clears it once, then every page and data request goes through that cleared session. Runs need 4 GB of memory for the browser.

🌍 Which proxy should I use? Keep the default, Apify residential proxies in Germany. Datacenter IPs get challenged again and again.

💶 What does pricePerUnit mean? The base price BAUHAUS prints next to the sales price for goods sold by weight, length, area or volume, such as 22.30 EUR/kg. Products sold per piece have none.

📦 What do the availability values mean? In stock means the product is orderable online; In store only means it can be reserved and picked up in a store but not shipped. onlineOrderable and storeReservable spell both out.

⭐ Why is rating sometimes Not Disclosed? The product has no ratings yet. reviewCount is then 0.

🧾 Does it scrape product detail pages, reviews or EAN codes? No. Everything comes from listing pages and the product feed behind them. Long descriptions, review texts and EAN/GTIN codes are not included.

🔢 Why did a price-sorted run return fewer rows than the category total? Many products share the same price, and BAUHAUS shuffles ties between pages. The Actor removes duplicates by article number, so a price-sorted crawl of a large category can miss some tied items. Use the default sort for complete coverage.

⏱ How fast is it? One listing page of 36 products every three to five seconds after the browser has cleared the check, which takes 5 to 50 seconds.

🆓 What do free users get? Up to 10 products per run as a preview. Upgrade your Apify plan to collect up to 1,000,000 products per run.

🔌 Integrate with any app

Export from the Dataset tab, or pull results with the API in any language:

curl "https://api.apify.com/v2/acts/parseforge~bauhaus-product-scraper/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms":["bohrmaschine"],"maxItems":50}'

🔗 Recommended Actors

Browse the full ParseForge collection for more e-commerce scrapers.

🆘 Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by BAUHAUS AG. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

What input does the BAUHAUS Product Scraper accept?

FieldTypeWhat it doesDefault
startUrls array Any bauhaus.info listing URL: a category (https://www.bauhaus.info/heisskleber/c/10000646, the address ends in /c/) or a search (https://www.bauhaus.info/search?q=bohrmaschine). Filters and sort already in the URL are kept. The Actor walks every page of each listing. One URL per line, combined with the search terms below. [{"url":"https://www.bauhaus.info/heissk
searchTerms array Keywords to search on bauhaus.info, one per line (for example bohrmaschine, gartenmoebel, laminat). Each term is a separate search, ordered by the sort below. German terms match best because the catalogue is German. []
maxItems integer Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000 10
sortBy string (4 options) Order in which BAUHAUS lists the products. Applied to search terms and to listing URLs that do not already carry a sort parameter. not set
proxyConfiguration object bauhaus.info sits behind a site-wide Cloudflare challenge that only a real browser clears, so every run goes through a stealth browser that solves it once per session. German residential proxies are on by default and are the reliable way through; datacenter IPs are challenged repeatedly. {"useApifyProxy":true,"apifyProxyGroups"

How much does the BAUHAUS Product Scraper cost?

from $4.00 per 1,000 results

Charged forWhat it isPrice each
Product scraped One BAUHAUS product row with price, price per unit, availability, online orderability, rating, specs, images and URL. $0.004 to $0.005

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

How do I call the BAUHAUS Product Scraper API?

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST · run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~bauhaus-product-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "startUrls": [
      {
        "url": "https://www.bauhaus.info/heisskleber/c/10000646"
      }
    ],
    "searchTerms": [],
    "maxItems": 10,
    "proxyConfiguration": {
      "useApifyProxy": true,
      "apifyProxyGroups": [
        "RESIDENTIAL"
      ],
      "apifyProxyCountry": "DE"
    }
  }'

What example inputs can I use?

Use these inputs to see how a run is configured.

input.json
{
  "startUrls": [
    {
      "url": "https://www.bauhaus.info/heisskleber/c/10000646"
    }
  ],
  "searchTerms": [],
  "maxItems": 10,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "DE"
  }
}

What do users say about the BAUHAUS Product Scraper?

No reviews yet. Be the first.

How do I report an issue with the BAUHAUS Product Scraper?

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

What related scrapers can I use?

Run BAUHAUS Product Scraper on Apify All scrapers