Kleinanzeigen Scraper — Germany, Numeric Price Parsed avatar

Kleinanzeigen Scraper — Germany, Numeric Price Parsed

Pricing

from $1.01 / 1,000 results

Go to Apify Store
Kleinanzeigen Scraper — Germany, Numeric Price Parsed

Kleinanzeigen Scraper — Germany, Numeric Price Parsed

Scrape Kleinanzeigen.de classified ads with numeric price parsed from German number format, negotiable/giveaway flags, and split postal-code-plus-city location.

Pricing

from $1.01 / 1,000 results

Rating

0.0

(0)

Developer

Axery

Axery

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Kleinanzeigen Search Scraper (Germany)

Scrapes classified ads from kleinanzeigen.de over plain HTTP — no browser, no login. The search results page has no JSON endpoint, and its JSON-LD covers only image metadata — not price, title, or location — so this Actor parses the HTML ad cards directly.

German number format, handled correctly

Price is displayed like "900 € VB" — German convention, where a dot is a thousands separator and a comma is the decimal point, the reverse of English. A naive parse would turn "1.500 €" into 1.5 instead of 1500. This Actor gets the convention right and additionally recognizes two markers sellers commonly add:

"price": {
"amount": 900.0, "currency": "EUR",
"is_negotiable": true, "is_giveaway": false,
"raw": "900 € VB"
}
  • is_negotiable — the VB (Verhandlungsbasis, "starting point for negotiation") suffix.
  • is_giveaway"zu verschenken" listings, which carry no amount at all.

Location, split

The card shows "85221 Dachau" as one string. This Actor splits it:

"location": { "raw": "85221 Dachau", "postal_code": "85221", "city": "Dachau" }

No free-text search parameter — Kleinanzeigen routes by URL path

Like several other targets in this suite, there's no ?q= alone. Browse kleinanzeigen.de, run the search you want, and copy the path segment:

{ "categoryPaths": ["s-fahrrad/k0", "s-berlin/s-wohnung-mieten/k0l3331"] }

The second example shows the site's own combined keyword+location+category paths — anything you can build by searching on the site works here.

Input

FieldTypeNotes
categoryPathsarrayKleinanzeigen URL path segments.
maxItemsintegerPer path. 0 = unlimited, bounded by pagination depth.
incrementalbooleanOnly ads not seen in previous runs.
proxyConfigurationobjectDatacenter is normally enough — no anti-bot layer encountered.

Known limits

  • Card data only, no full listing page. Title, a short description snippet, price, location and the lead image — not the full ad body or seller contact details. A second-tier "detail" Actor could add that with a per-ad fetch, following the same pattern as Bayt in this suite.
  • No structured category taxonomy in the output. Kleinanzeigen encodes category in the URL path you provide, not in the card itself.
  • Price parsing assumes German formatting. If Kleinanzeigen ever serves a locale variant with different number conventions, this parser would need adjusting.

Local development

pip install -r requirements.txt
python test_local.py "s-fahrrad/k0" --max 20 --out sample_output.json
python test_local.py "s-berlin/s-wohnung-mieten/k0l3331" --max 10

sample_output.json in this folder is real output from a live run, kept so the schema can be reviewed without running anything.