WLW Germany Supplier Directory Scraper
Pricing
Pay per event
WLW Germany Supplier Directory Scraper
Extract WLW Germany supplier leads, product URLs, company IDs, badges, contact availability, and ranks from public search results.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Extract supplier lead data from WLW Germany search result pages.
The actor collects company names, WLW profile URLs, product or service titles, product URLs, URL IDs, visible selling points, badges, contact availability, pagination position, and the source search URL. It is built for regional B2B lead generation, supplier discovery, sourcing research, and market mapping.
What It Does
WLW is a German-language supplier directory used for B2B sourcing.
This actor turns public WLW search result pages into structured dataset rows.
It starts from one or more search terms or direct WLW result URLs.
It follows pagination up to your configured page limit.
It saves each supplier product card as one result.
It deduplicates repeated product or company profile URLs.
Why use it
WLW result pages are useful for supplier discovery, but they are not shaped for repeatable lead export.
This actor gives you structured rows with company names, profile URLs, product titles, ranking positions, badges, and source URLs.
Use it when you need a reproducible supplier list instead of manually copying results from the WLW website.
It is especially useful for German-language B2B categories where search visibility, product wording, and supplier type signals matter.
How to scrape WLW supplier data
- Open the actor page on the Apify Store.
- Click Try for free or Run.
- Enter a
searchQuery, such asmaschinenbau, or paste one or more WLW result URLs intostartUrls. - Set
maxResultsandmaxPagesPerSearchto match the size of export you need. - Keep the country and supplier type filters empty unless you want to narrow WLW's public result URL.
- Run the actor and wait for the dataset to finish.
- Export the results as JSON, CSV, Excel, or through the Apify API.
Typical Use Cases
Build supplier prospect lists for German industrial categories.
Map companies selling a specific product or service.
Collect WLW profile URLs for manual qualification.
Monitor which suppliers appear for important B2B keywords.
Compare companies visible across several related searches.
Prepare regional lead lists for sales, sourcing, or procurement workflows.
Who Is It For
Sales teams can use it to find companies active in a target industrial category.
Procurement teams can use it to discover alternate suppliers in Germany, Austria, or Switzerland.
Market researchers can use it to compare supplier visibility across product keywords.
Data teams can use it to feed WLW profile URLs into enrichment and qualification pipelines.
Agencies can use it to build lead lists for regional B2B campaigns.
Input parameters
You can run the actor with a single search query.
You can add multiple search queries.
You can provide direct WLW result URLs.
You can limit the maximum number of saved results.
You can limit how many result pages are followed for each source.
You can set optional WLW public URL filters for country and supplier type.
You can configure retries and proxy settings.
Search Query
Use searchQuery for the main keyword.
Example values:
maschinenbaucnc fertigungkunststoffteilesondermaschinenbaumetallverarbeitung
Multiple Queries
Use searchQueries when you want to scrape several WLW searches in one run.
Each query becomes its own WLW product search URL.
The global maxResults limit still applies across all queries.
Start URLs
Use startUrls when you already have a WLW search or products URL.
Supported examples:
https://www.wlw.de/de/suche?q=maschinenbauhttps://www.wlw.de/de/products?isPserpFirst=1&q=maschinenbauhttps://www.wlw.de/de/products/page/2?isPserpFirst=1&q=maschinenbau
Country Filter
WLW exposes country filters through URL parameters.
Known public codes from the tested page data:
40for Germany275for Austria401for Switzerland
Leave the field empty if you do not want a country filter.
Supplier Type Filter
WLW exposes supplier type filters through URL parameters.
Useful values may include:
productiondistributionservicewholesalercustomerSpecificManufacturing
Leave the field empty if you do not want this filter.
Result Limits
maxResults controls the maximum number of saved rows.
maxPagesPerSearch controls pagination depth per query or start URL.
For tests, keep both values low.
For production exports, increase maxResults and maxPagesPerSearch together.
Output Fields
Each dataset item represents one visible WLW supplier product card.
The actor saves these fields:
search_urlquerypage_numberposition_on_pagerankcompany_nameprofile_urlcompany_idproduct_titleproduct_urlproduct_idproduct_descriptionsell_pointssupplier_typesbadgescontact_availablesource_typescraped_at
Example Output
{"search_url": "https://www.wlw.de/de/suche?q=maschinenbau","query": "maschinenbau","page_number": 1,"position_on_page": 1,"rank": 1,"company_name": "D + E GmbH","profile_url": "https://www.wlw.de/de/firma/d-e-gmbh-1606813","company_id": "1606813","product_title": "CNC-Fertigung / Drehen","product_url": "https://www.wlw.de/de/firma/d-e-gmbh-1606813/produkte/cnc-fertigung-drehen-30378","product_id": "30378","sell_points": ["Spezialist fΓΌr klein/mittlere Serien","Meisterhaftes CNC-Drehen komplexer Teile"],"contact_available": true,"source_type": "searchQuery","scraped_at": "2026-05-15T12:51:57.296Z"}
Company Fields
company_name is the visible supplier name from the card.
profile_url is the WLW company profile URL.
company_id is parsed from the profile URL when present.
These fields are useful for deduplication and follow-up enrichment.
Product Fields
product_title is the visible product or service title.
product_url is the WLW product detail URL.
product_id is parsed from the product URL when present.
product_description is the short card text when WLW exposes it.
sell_points contains bullet-style value points visible on the card.
Badge Fields
WLW cards may show verification, ranking, or response badges.
The actor stores visible labels in badges.
contact_available is true when the result card exposes the WLW contact button.
Pagination Fields
page_number is the result page within the current source.
position_on_page is the card position on that page.
rank is the running rank within the run after previous saved rows.
These fields help preserve search ordering.
Source Fields
search_url is the exact page URL fetched for the result.
query is the keyword when the source came from a query or a URL with q.
source_type is searchQuery or startUrl.
scraped_at is an ISO timestamp.
How much does it cost to scrape WLW supplier data?
This actor uses pay-per-event pricing.
The formula-derived BRONZE result event is priced at $0.000039195 per saved result.
That equals about $0.039 per 1,000 results before account-tier discounts.
A small run-start event is charged separately.
Current result event prices by Apify account tier:
- FREE:
$0.000045075per result - BRONZE:
$0.000039195per result - SILVER:
$0.000030572per result - GOLD:
$0.000023517per result - PLATINUM:
$0.000015678per result - DIAMOND:
$0.000010975per result
For example, 1,000 extracted rows cost about $0.039 on BRONZE before the run-start fee.
The actual run charge depends on how many result rows are saved.
Performance
The actor uses HTTP requests and Cheerio parsing.
It does not launch a browser.
It is designed to run with 256 MB memory for normal search jobs.
The dynamic memory setting can scale to 512 MB for larger inputs.
Proxy Use
The tested WLW search page was directly fetchable as SSR HTML.
Proxy settings are still available for reliability.
If WLW returns anti-bot responses from your environment, enable Apify Proxy.
Residential proxy is the conservative default in the input prefill.
Data Freshness
The actor fetches live WLW pages during each run.
Results may change as WLW changes ranking, availability, or supplier profiles.
Use the scraped_at field to track when each row was collected.
Limitations
The first version focuses on public search result cards.
It does not open each company profile page.
Full postal addresses and external websites are not always exposed on the public result card, so they are not guaranteed fields in version 0.1.
WLW may change its frontend markup or anti-bot behavior.
Recommended Test Run
{"searchQuery": "maschinenbau","maxResults": 30,"maxPagesPerSearch": 1}
Larger Export Example
{"searchQueries": ["maschinenbau", "cnc fertigung", "sondermaschinenbau"],"countryCode": "40","maxResults": 500,"maxPagesPerSearch": 10}
Direct URL Example
{"startUrls": [{ "url": "https://www.wlw.de/de/suche?q=maschinenbau" }],"maxResults": 100,"maxPagesPerSearch": 3}
Tips
Start with maxResults between 20 and 50 when testing a new keyword.
Use German search terms for best WLW coverage.
Use startUrls when your browser already shows the exact WLW result page you want to scrape.
Keep unrelated markets in separate runs so exports are easier to review.
Increase maxPagesPerSearch only after confirming that the first page returns relevant supplier cards.
If WLW returns no results for a valid keyword, try the direct /de/products URL form or enable proxy settings.
Export Formats
You can export the default dataset as JSON.
You can export it as CSV.
You can export it as Excel.
You can fetch rows through the Apify API.
API Usage
You can run this actor through the Apify API after deployment.
Node.js example:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/wlw-de-supplier-directory-scraper').call({searchQuery: 'maschinenbau',maxResults: 20,maxPagesPerSearch: 1});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python example:
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ["APIFY_TOKEN"])run = client.actor("automation-lab/wlw-de-supplier-directory-scraper").call(run_input={"searchQuery": "maschinenbau","maxResults": 20,"maxPagesPerSearch": 1,})items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(items)
cURL example:
curl "https://api.apify.com/v2/acts/automation-lab~wlw-de-supplier-directory-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchQuery":"maschinenbau","maxResults":20,"maxPagesPerSearch":1}'
Integrations
You can connect the WLW Germany Supplier Directory Scraper to other systems through the Apify API, webhooks, integrations, and Apify MCP.
Common workflow patterns:
- Save WLW supplier rows to Google Sheets or Airtable for lead review.
- Send completed dataset exports to a CRM enrichment pipeline.
- Trigger a webhook when a sourcing run finishes.
- Run recurring keyword checks from an Apify schedule.
- Use Apify MCP from an AI client to run focused supplier searches and summarize the dataset.
Apify MCP HTTP setup:
$claude mcp add --transport http apify-wlw-suppliers "https://mcp.apify.com?tools=automation-lab/wlw-de-supplier-directory-scraper"
Claude Desktop, Cursor, or VS Code MCP JSON configuration:
{"mcpServers": {"apify-wlw-suppliers": {"type": "http","url": "https://mcp.apify.com?tools=automation-lab/wlw-de-supplier-directory-scraper"}}}
For agent use, run the actor with a small maxResults value first, inspect the dataset, then increase limits for the final export.
Example prompts:
- "Run the WLW Germany Supplier Directory Scraper for
maschinenbauwith 20 results and summarize the top suppliers." - "Find WLW suppliers for
cnc fertigungin Germany and return company names, profile URLs, and product titles." - "Scrape 100 WLW supplier product cards for
kunststoffteile, then group the results by repeated company profile URL."
Related scrapers
Other automation-lab actors that can support supplier discovery and B2B lead workflows:
- Made-in-China Suppliers Scraper
- ExportersIndia Suppliers Scraper
- IQS Directory Industrial Supplier Scraper
- Thomasnet Scraper
- Website Contact Finder
Legality
The actor extracts data from publicly accessible WLW result pages.
You are responsible for using the output in accordance with applicable laws, WLW terms, and privacy obligations.
Avoid using scraped business contact data for unsolicited outreach that violates local rules.
Store only the data you need for your legitimate workflow.
FAQ
Can it scrape company profile pages?
Version 0.1 focuses on search result cards and does not open every profile page.
Does it require a browser?
No. The tested WLW product search pages render usable HTML in the initial response.
Why are some address or website fields missing?
Those fields are not consistently visible on public result cards, so this actor does not invent or infer them.
Can I filter to Germany only?
Yes. Use countryCode value 40, or leave the field empty to use WLW's default result set.
Why did my keyword return no items?
The keyword may route to a different WLW result type, return no public product cards, or trigger anti-bot handling. Try a direct /de/products start URL or enable proxy settings.
Quality Notes
The scraper reads server-rendered WLW HTML.
It uses stable data-test selectors where available.
It deduplicates rows by product URL and profile URL.
It throws an error if no rows are extracted.
Operational Notes
Keep test inputs small while validating a keyword.
Increase limits only after confirming the keyword returns relevant suppliers.
Use separate runs for unrelated market segments when you want clean exports.
Support
If a run returns no items for a keyword that works in your browser, check whether WLW changed the public URL structure or returned an anti-bot page.
The run log includes fetched URLs and warnings for pages where no product cards were found.