Kleinanzeigen Scraper is a free and open-source scraper that gets you unlimited detailed Kleinanzeigen data for free.
- 🔍 Search 58M+ live listings — keyword, category, location, radius, price & category filters, 100 per page
- 🚗 Full listing details — price, attributes, every photo, coordinates, shipping, view count & seller reputation
- 🏪 Sellers & stores — profiles, badges, reply rate, phone, opening hours and their whole inventory
- 🏠 Cars, real estate & jobs — search by make, mileage, rooms, living area and more with plain params
{
"id": "3238808629",
"title": "Porsche 911 2.2 S 1971 Umfrangreich restauriert",
"link": "https://www.kleinanzeigen.de/s-anzeige/porsche-911-2-2-s-1971-umfrangreich-restauriert/3238808629-216-3433",
"description": "Dieser 1971 Porsche 911 2.2 S stammt aus deutscher Erstauslieferung und präsentiert sich in einem sehr guten optischen wie technischen Gesamtzustand. Innen, außen und technisch umfassend restauriert...",
"type": "offer",
"status": "active",
"views": 6734,
"image_count": 20,
"price": { "amount": 99500, "currency": "EUR", "type": "fixed", "is_negotiable": false },
"category": { "id": "216", "name": "Autos", "parent_id": "210" },
"location": {
"id": "3433",
"name": "13595 Spandau",
"postal_code": "13595",
"state": "Berlin",
"street": "Scharfe Lanke 109-131",
"latitude": 52.507668,
"longitude": 13.191692
},
"seller": {
"id": "122110278",
"name": "MOTORSPORT24 GmbH",
"type": "commercial",
"member_since": "2022-08-31",
"phone": "+49 (0)30 692014098",
"rating": {
"score": 0.7,
"satisfaction": { "level": 2, "label": "TOP" },
"friendliness": { "level": 1, "label": "Sehr freundlich" },
"reliability": { "level": 1, "label": "Sehr zuverlässig" }
},
"store": { "id": "96132", "name": "MOTORSPORT24 GmbH", "link": "https://www.kleinanzeigen.de/pro/MOTORSPORT24" },
"active_listings": 128,
"total_listings": 1987,
"followers": 1046
},
"attributes": [
{ "key": "autos.marke", "name": "Marke", "value": "Porsche", "raw_value": "porsche", "unit": null },
{ "key": "autos.km", "name": "Kilometerstand", "value": 91111, "raw_value": "91111", "unit": "km" },
{ "key": "autos.power", "name": "Leistung", "value": 179, "raw_value": "179", "unit": "PS" }
],
"images": [
{
"link": "https://img.kleinanzeigen.de/api/v1/prod-ads/images/26/26d4690a-1a56-41e5-bfd2-541c9e9497cc?rule=$_57.JPG",
"thumbnail_link": "https://img.kleinanzeigen.de/api/v1/prod-ads/images/26/26d4690a-1a56-41e5-bfd2-541c9e9497cc?rule=$_2.JPG"
}
],
"posted_at": "2026-10-03T10:04:26Z",
"updated_at": "2026-09-18T10:58:14Z"
}Trimmed for readability.
1️⃣ Clone and install:
git clone https://github.com/omkarcloud/kleinanzeigen-scraper
cd kleinanzeigen-scraper
python -m pip install -r requirements.txt2️⃣ Start the API:
python run.pyKleinanzeigen only answers German IP addresses. In Germany this works as is. Anywhere else, start it with a German proxy:
KLEINANZEIGEN_PROXY=http://user:pass@host:port python run.py3️⃣ Get your first data:
curl "http://localhost:8000/listings/details?listing=3238808629"{
"id": "3238808629",
"title": "Porsche 911 2.2 S 1971 Umfrangreich restauriert",
"link": "https://www.kleinanzeigen.de/s-anzeige/porsche-911-2-2-s-1971-umfrangreich-restauriert/3238808629-216-3433",
"type": "offer",
"status": "active",
"views": 6734,
"image_count": 20,
"price": { "amount": 99500, "currency": "EUR", "type": "fixed", "is_negotiable": false },
"category": { "id": "216", "name": "Autos", "parent_id": "210" },
"location": { "id": "3433", "name": "13595 Spandau", "state": "Berlin", "latitude": 52.507668, "longitude": 13.191692 },
"seller": {
"id": "122110278",
"name": "MOTORSPORT24 GmbH",
"type": "commercial",
"member_since": "2022-08-31",
"active_listings": 128,
"followers": 1046
},
"posted_at": "2026-10-03T10:04:26Z"
}All 19 endpoints are now live at http://localhost:8000.
19 endpoints cover everything you need.
| Endpoint | Path | Returns |
|---|---|---|
| Listing Details | /listings/details |
Everything about one listing in a single call |
| Search Suggestions | /search/suggestions |
What people type into the search box, most searched first |
| Search Listings | /search |
Up to 100 listings per page with every filter the site has |
| Search Cars / Real Estate / Jobs | /cars/search, /real-estate/search, /jobs/search |
Make, mileage, rooms, area and job field as plain params |
| Listing Details Batch | /listings/details/batch |
Full details for 20 listings in one call |
| Similar Listings | /listings/similar |
The listings the site recommends next to one |
| Listing Views | /listings/views |
View counts for 50 listings at once to track demand |
| Seller Profile / Listings | /sellers/profile, /sellers/listings |
Reputation badges, reply rate and the seller's whole inventory |
| Store Profile / Listings | /stores/profile, /stores/listings |
Phone, website, address, opening hours and the store's inventory |
| Categories / Category Filters | /categories, /categories/filters |
The category tree and every filter each category supports |
| Search Locations / Location Details | /locations/search, /locations/details |
Cities, districts and postal codes with IDs and coordinates |
| Nearest Location / Top Locations | /locations/nearest, /locations/top |
The location for any coordinate, and the top cities |
The same API is published on RapidAPI, and its playground is the easiest place to try parameters and see raw responses. Once a request looks right, run it locally for unlimited free data.
- Subscribe to the free plan — 1,000 calls/month, no credit card.
- Try the endpoints in the playground — every param is pre-filled, so you see real data in one click.
- Copy the generated code and replace
https://best-kleinanzeigen-scraper-free-1000-calls.p.rapidapi.comwithhttp://localhost:8000. It will now run against your local API.
import requests
# generated by the playground, host swapped for the local API
response = requests.get(
"http://localhost:8000/listings/details",
params={"listing": "3238808629"},
)
print(response.json())You're a developer — we know how hard completing a project can be. So we offer full support: just message us and we'll reply ✅ with a solution within 1 working day.
- Google Maps Scraper (3,100+ GitHub Stars) — type "dentists in New York", get every business as a ready-to-call lead list: phones, emails, websites & reviews. Up to 100K free leads/month.
- G2 Scraper — G2 product details, ratings & AI-found contacts
- Website Email Contact Scraper — emails, phones & socials from any website
- AliExpress Scraper — live product details, SKU variants, stock & shipping
- Booking Scraper — Booking.com hotels: prices, ratings, rooms & amenities
- Etsy Scraper — Etsy products: prices, discounts, shops & variations
⭐ Love It? Star It ⭐!
Star the repo ⭐ and become my star hero!
It's just 1 click, but it means the world to me.


