WLW Scraper - B2B Companies & Contacts (DACH) avatar

WLW Scraper - B2B Companies & Contacts (DACH)

Pricing

from $1.30 / 1,000 company profiles

Go to Apify Store
WLW Scraper - B2B Companies & Contacts (DACH)

WLW Scraper - B2B Companies & Contacts (DACH)

Scrape WLW (Wer liefert was) B2B company profiles in Germany, Austria and Switzerland. Get phone, email, VAT ID, address, GPS, certificates and contacts. Keyword, category or profile URL. Fast curl_cffi HTTP on Apify.

Pricing

from $1.30 / 1,000 company profiles

Rating

0.0

(0)

Developer

Andrej Kiva

Andrej Kiva

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Disclaimer: Unofficial integration for publicly accessible sources. Trademarks belong to their respective owners. Provided for informational use only; users must comply with applicable platform terms and laws.

Crawloop Visable B2B Directory Suite — structured company profiles from WLW (DACH) and Europages (Europe-wide).

WLW (DACH)Europages (Europe)
WLW Scraper ◄── you are hereEuropages Scraper
DE / AT / CH suppliers, phone, email, VAT, contactsMulti-country EU directory, VAT, contacts, certificates

WLW scraper for Apify — extract DACH B2B company profiles from Wer liefert was (Germany, Austria, Switzerland) into clean JSON. Collect manufacturers, distributors, wholesalers and service providers with phone, email, VAT ID, street address, GPS coordinates, certificates, named contact persons, and optional product catalog cards.

Ideal for supplier sourcing, sales prospecting, CRM enrichment, and firmographic research across the German-speaking market. Fast HTTP crawl: listing pages via Nuxt SSR, company details via lightweight _payload.json — no headless browser.

Use cases

Use caseWhat you get
Find DACH suppliersKeyword / category listings with company id, city, country, website
Lead & contact listsPhone, email, and named managers from company profiles
Firmographics & complianceVAT ID, founding year, employee range, certificates
Geo & territory mappingStreet address plus latitude / longitude
Product landscapeOptional product cards from each company catalog
Multi-market runsSwitch host between DE / AT / CH

When to use this Actor

  • You need WLW B2B company data as structured dataset rows
  • You want keyword search or paste category / profile URLs
  • You prefer a fast, browser-free crawl on Apify

When not to use this Actor

  • Guaranteed email on every profile — many free listings publish phone and website only
  • Authenticated / gated WLW fields — public SSR / payload only
  • Sending RFQs through the WLW contact form — this Actor is read-only extraction
  • Non-WLW directories — use a source-specific Actor instead

Key features

  • Keyword search — builds WLW SEO listing URLs (/de/suche/…)
  • Category & start URLs — paste listing pages or company profile links
  • DACH marketsde (wlw.de), at (wlw.at), ch (wlw.ch)
  • Detail enrichmentfetchDetails loads company _payload.json for VAT, contacts, certificates, geo
  • Optional productsincludeProducts attaches catalog cards from the profile
  • Streaming results — dataset rows appear while the run is in progress
  • Pagination controlsmaxPages + maxItems for predictable run size
  • Lightweight & resilientcurl_cffi Chrome TLS fingerprinting, proxy session rotation on challenges

Input parameters

ParameterTypeDefaultDescription
searchKeywordsArray["maschinenbau"]Keywords → WLW listing URLs.
categoryUrlsArray[]Direct listing / category URLs.
startUrlsArray[]Company profiles and/or extra listings.
marketString"de"DACH host: de, at, or ch.
languageString"de"URL language path (de or en).
fetchDetailsBooleantrueFetch profile payload for full fields.
includeProductsBooleanfalseAttach product cards from profiles.
maxItemsInteger50Max dataset rows (0 = unlimited within maxPages).
maxPagesInteger3Max listing pages per list URL.
concurrencyInteger6Parallel detail workers (1–15; lower if challenges).
proxyConfigurationObjectresidentialApify Proxy settings (residential recommended).

Example — German timber-machine suppliers

{
"searchKeywords": ["abbundmaschinen"],
"market": "de",
"language": "de",
"fetchDetails": true,
"includeProducts": false,
"maxItems": 100,
"maxPages": 5,
"concurrency": 6,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Example — Direct company profiles + category URL

{
"categoryUrls": [
{ "url": "https://www.wlw.de/de/suche/abbundmaschinen" }
],
"startUrls": [
{ "url": "https://www.wlw.de/de/firma/mustertechnik-gmbh-100001" }
],
"market": "de",
"fetchDetails": true,
"maxItems": 50,
"maxPages": 2,
"concurrency": 4
}

Output

Each dataset item is one WLW company. Example fields (fictional sample for illustration):

{
"recordType": "company",
"companyId": "100001",
"uuid": "00000000-0000-4000-8000-000000000001",
"name": "Mustertechnik GmbH",
"slug": "mustertechnik-gmbh-100001",
"market": "de",
"language": "de",
"url": "https://www.wlw.de/de/firma/mustertechnik-gmbh-100001",
"description": "Example industrial supplier description for documentation only.",
"websiteUrl": "https://www.mustertechnik.example/",
"email": "info@mustertechnik.example",
"phoneNumber": "+493012345678",
"businessTypes": ["distribution"],
"city": "Berlin",
"countryCode": "DE",
"address": {
"street": "Musterstrasse 1",
"zipcode": "10115",
"city": "Berlin",
"countryCode": "DE",
"latitude": 52.52,
"longitude": 13.405
},
"foundingYear": 1998,
"employeeCount": "20-49",
"vatId": "DE000000000",
"distributionArea": "national",
"contactPersons": [
{
"firstName": "Max",
"lastName": "Mustermann",
"email": "max.mustermann@mustertechnik.example",
"phoneNumber": "+493012345679",
"executiveType": "executive"
}
],
"logoUrl": "https://cdn.example.com/logos/mustertechnik.png"
}

Workflow

  1. Build listing URLs from searchKeywords, categoryUrls, and/or startUrls
  2. Paginate WLW search pages and parse Nuxt __NUXT_DATA__ company rows
  3. Deduplicate by companyId / uuid
  4. Optionally enrich each profile via /firma/{slug}/_payload.json
  5. Stream rows to the default dataset (PPE event scraped-company)

Tips for better results

  • Prefer residential proxy for larger crawls; lower concurrency (3–5) if you see challenges
  • Set fetchDetails: false for a fast listing-only pass, then re-run with profile URLs for enrichment
  • Use market to target Austria (at) or Switzerland (ch) hosts
  • Keep includeProducts off unless you need catalog cards (larger payloads)
  • Need pan-European supplier coverage beyond DACH? Use Europages Scraper
ActorUse for
WLW Scraper ◄── you are hereDACH (DE / AT / CH) B2B suppliers from Wer liefert was
Europages ScraperEurope-wide B2B directory, multi-locale, VAT & contacts