DAHLER Real Estate Scraper
Pricing
from $4.70 / 1,000 dataset items
DAHLER Real Estate Scraper
Scrapes buy and rent listings from DAHLER Immobilien (dahler.com) across Germany, Austria, and Spain. Extracts prices, property details, images, contact info, and energy certificate data via the public Solr search API and listing detail pages.
Pricing
from $4.70 / 1,000 dataset items
Rating
0.0
(0)
Developer
Data Scrapers
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Security
Limited permissionsShare
DAHLER Real Estate Scraper creates a structured dataset of buy and rent listings collected from DAHLER (dahler.com) in Germany, Austria, and Spain. Each dataset item is one property and can include property_id, title, URL, purchase type, price or base rent, living area, room count, property type, city, country, coordinates, and energy class when the detail page provides it. Query the source with region and marketingTypes (buy, rent, or both). Cap the run with maxItems. Turn on fetchDetails for gallery, description, and office fields. Retrieve records through the Apify Dataset API or export them as JSON, CSV, Excel, or XML.
Dataset at a glance
| Property | Value |
|---|---|
| Source | dahler.com |
| Record unit | One property listing |
| Input methods | region, marketingTypes, fetchDetails |
| Main identifiers | property_id, url |
| Delivery | Apify Dataset and API |
| Export formats | JSON, CSV, Excel, XML |
| Update model | Fresh records per Actor run |
| Pricing | $5.00 per 1,000 dataset-item events. Platform usage is billed separately. |
Coverage and available records
Regions follow the Actor input, including a German state, Berlin, nationwide Germany, Austria, and Spain. marketingTypes selects buy, rent, or both. Overview rows come from the public search index. fetchDetails opens the listing page for description, images, energy data, and office contact. A detail failure keeps the overview row.
price is the asking purchase price for buy listings. base_rent is the rent figure for rent listings. price_on_request is true when the index marks the price as on request, and the numeric price is then empty.
Data dictionary
| Field | Type | Nullable | Description | Example |
|---|---|---|---|---|
| property_id | string | no | DAHLER property id. Deduplication key. | DC-BER32752 |
| url | string | yes | Listing page | https://www.dahler.com/de/immobilie-kaufen/wohnimmobilien/dachgeschoss/berlin/dachgeschoss-highlight-mit-sonnenterrassen-am-rosenthaler-platz/DC-BER32752 |
| title | string | yes | Listing headline. Stored in German. | Dachgeschoss-Highlight mit Sonnenterrassen am Rosenthaler Platz |
| purchase_type | string | yes | BUY or RENT | BUY |
| marketing_type | string | yes | buy or rent | buy |
| price | number | yes | Asking purchase price, EUR | 995000 |
| base_rent | number | yes | Rent amount when the listing is a rental | |
| price_on_request | boolean | yes | True when no public price is posted | false |
| price_per_m2 | number | yes | Price per square meter | 7571.43 |
| living_area_m2 | number | yes | Living area | 139.27 |
| nr_rooms | number | yes | Room count | 4.0 |
| property_type | string | yes | Normalized type | OTHER |
| city | string | yes | Locality label | Berlin / Mitte |
| country | string | yes | Country label | Deutschland |
| energy_class | string | yes | Energy class when the detail page has one |
Example dataset record
Saved buy listing from a Berlin search. The headline on the site is German. Office contact names are omitted.
{"property_id": "DC-BER32752","url": "https://www.dahler.com/de/immobilie-kaufen/wohnimmobilien/dachgeschoss/berlin/dachgeschoss-highlight-mit-sonnenterrassen-am-rosenthaler-platz/DC-BER32752","title": "Dachgeschoss-Highlight mit Sonnenterrassen am Rosenthaler Platz","purchase_type": "BUY","price": 995000,"living_area_m2": 139.27,"property_type": "OTHER","city": "Berlin / Mitte","base_rent": null,"energy_class": null}
Query and input reference
| Field | Type | Description |
|---|---|---|
| region | string | Search region, such as Berlin, Deutschland, or Austria. |
| marketingTypes | array | buy, rent, or both. |
| fetchDetails | boolean | Open listing pages for description, images, and office fields. |
| maxDetailConcurrency | integer | Parallel detail requests. |
| maxItems | integer | Maximum listings. |
| proxyConfiguration | object | Apify proxy settings. Residential is the intended default. |
Retrieve the data through the API
from apify_client import ApifyClientclient = ApifyClient("YOUR-APIFY-TOKEN")run = client.actor("datascrapers/dahler-scraper").call(run_input={"region": "Berlin","marketingTypes": ["buy", "rent"],"fetchDetails": True,"maxItems": 5,"proxyConfiguration": {"useApifyProxy": True,"apifyProxyGroups": ["RESIDENTIAL"],},})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["property_id"], item["city"], item.get("price"))
Data quality and record handling
Deduplicate on property_id. Prices are asking figures from DAHLER, in EUR unless the record says otherwise. price and base_rent are separate: a buy row leaves base_rent empty, and a rent row leaves price empty when the index only has rent. Coordinates come from the search index. Energy class is present only after a successful detail fetch.
Pricing and cost examples
| Event | When it fires | Free | Bronze | Silver | Gold |
|---|---|---|---|---|---|
| dataset-item | Every listing saved | $5.00 / 1,000 | $4.90 / 1,000 | $4.80 / 1,000 | $4.70 / 1,000 |
Platinum and Diamond use the Gold rate. Platform usage, including residential proxy traffic, is billed separately.
1,000 saved listings cost $5.00 in event charges on Free and $4.70 on Gold, plus platform usage.
Limitations and responsible data use
DAHLER can change region coverage and listing ids. Asking prices are not transaction prices. Office emails on a detail page belong to the agency. Use the dataset for market research. Do not treat a missing price as zero. price_on_request means the figure was withheld.
Dataset questions
What is one record?
One DAHLER listing, buy or rent.
Which field is the key?
property_id.
Does fetchDetails change the charge?
No. The saved listing is one dataset-item whether or not the detail page was opened.
Related datasets from Data Scrapers
Data Scrapers support
Questions about this dataset: stardustspotlight@gmail.com.
