Das Telefonbuch Scraper avatar

Das Telefonbuch Scraper

Pricing

from $1.39 / 1,000 search results

Go to Apify Store
Das Telefonbuch Scraper

Das Telefonbuch Scraper

Scrape Das Telefonbuch (dastelefonbuch.de), Germany's phone directory: businesses and private listings with phone, fax, email, website, address, opening hours, ratings, reviews and contact persons. Export JSON, CSV, Excel.

Pricing

from $1.39 / 1,000 search results

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Features

Limited permissions

Share

Das Telefonbuch Scraper

Das Telefonbuch Scraper extracts business and private listings from Das Telefonbuch (dastelefonbuch.de), Germany's phone directory. Search by industry, company name or surname in any German city, district, postal code or federal state. Get phone, fax, mobile, email, website, address, opening hours, ratings, reviews and contact persons as clean data.

Turn any Das Telefonbuch search into a lead list with 45+ fields per listing, including decoded emails, full phone numbers, review sources and contact persons. The scraper goes past the site's 999-hit display limit.

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

Apify Actor: parsebird/das-telefonbuch-scraper. Scrapes Das Telefonbuch (dastelefonbuch.de), the German phone directory, for business listings (Branchensuche) or private listings (residential phone book). Call via ApifyClient: client.actor("parsebird/das-telefonbuch-scraper").call(run_input={"searchQuery": "Steuerberater", "location": "Frankfurt", "searchType": "business", "maxResults": 100, "includeDetails": true}). Inputs: searchQuery (string, required: industry, company name or surname, e.g. "Zahnarzt", "Siemens", "Müller"), location (string, required: city, district, 5-digit postal code or federal state, e.g. "Berlin Mitte", "10115", "Bayern"), searchType ("business" | "person", default "business"), maxResults (integer, default 100, 0 = every listing), includeDetails (boolean, default true: opens each listing page for email, fax, mobile, opening hours, reviews, profile text, services, coordinates, contact persons), proxyConfiguration (optional; leave empty). Output: one row per listing with name, address, street, postal_code, city, district, country, phone, fax, mobile, additional_phones, email, website, category, categories, opening_hours, rating, review_count, search_keywords, external_review_sources[{source, rating, count, url, included_in_total}], recent_reviews[{source, rating, author, date, text, url}], services, description, latitude, longitude, is_premium, entry_id, last_updated, contact_persons[{name, title, phone, email, address}], company_logo_url, source_url, search_type, has_details, scraped_at. Pricing: pay per event, $1.99 per 1,000 search results or $4.99 per 1,000 full profiles on the Free plan, plus a small run start fee. Full API spec: https://apify.com/parsebird/das-telefonbuch-scraper/api. Get your token: https://console.apify.com/settings/integrations.

What is Das Telefonbuch Scraper?

Das Telefonbuch Scraper turns dastelefonbuch.de searches into a spreadsheet-ready dataset. Enter what you're looking for (Wer/Was) and where (Wo), like on the site itself, and click Start. To try it, keep the prefilled search for Steuerberater in Frankfurt, which saves 20 tax advisors with full profiles in a few seconds.

Das Telefonbuch has no public API for its listings, so this scraper works as a Das Telefonbuch API alternative. Download your German business leads as JSON, CSV or Excel, or read them through the Apify API.

What can Das Telefonbuch Scraper do?

  • 🏢 Search businesses (Branchensuche) by industry or company name: Steuerberater, Zahnarzt, Elektriker, Siemens and so on.
  • 👤 Search private listings in the residential phone book by surname.
  • 📍 Search any location: a city, a district such as Berlin Mitte, a postal code such as 10115, or a federal state such as Bayern.
  • 📇 Get full profiles from each listing page: email, fax, mobile, opening hours, company profile text, services, keywords, coordinates and update date.
  • ⭐ Collect ratings and reviews: the overall rating, each review source (golocal, 11880, Google, Yelp, anwalt.de, kennstdueinen.de and others) and the newest reviews.
  • 👥 List contact persons and branches shown under "Weitere Einträge und Filialen", with their own phone and email.
  • ♾️ Go past the 999-hit limit. The site shows at most "999 Treffer", but the scraper keeps reading. In our test it saved 1,200 unique lawyers in Berlin.
  • ⚡ Search results only mode for fast, cheap lists of names, addresses and phone numbers.

Because it runs on Apify, you also get:

What data can you extract from Das Telefonbuch?

FieldDescription
nameBusiness or person name, as listed
address, street, postal_code, city, districtFull address, street with house number, 5-digit postal code, city and district (Stadtteil)
phone, fax, mobile, additional_phonesFull numbers. mobile is a 015x/016x/017x number when the listing has one
emailEmail address shown on the listing page (detail pages)
websiteThe business's own website
category, categoriesIndustry headings (Branchen) the listing is filed under
opening_hoursWeekly schedule, such as Mo 08:00-18:00; Tu 08:00-18:00 (detail pages)
rating, review_countOverall star rating (0–5) and number of reviews
external_review_sourcesEach review source with its rating, count, link and whether it counts toward the overall rating
recent_reviewsNewest reviews with source, stars, author, date, text and link
descriptionThe business's own "Unternehmensprofil" text, when it has one
services, search_keywords, brands, languages"Dienstleistungen", "Unsere Suchbegriffe", "Marken" and "Sprachen"
contact_personsFurther entries and branches, each with name, academic title, phone, email and address
latitude, longitudeCoordinates of the listing
is_premiumPaid premium listing
last_updatedDate the listing was last updated (YYYY-MM-DD), when shown
company_logo_urlThe listing's own logo
entry_id, source_urlDas Telefonbuch entry ID and listing page

Fields the listing doesn't show are null or empty. Fields marked "detail pages" need Include detail pages on.

How to scrape Das Telefonbuch step by step

  1. Open Das Telefonbuch Scraper and sign in to Apify.
  2. Enter a Search query (Wer/Was), such as Steuerberater, Zahnarzt or Müller.
  3. Enter a Location (Wo), such as Frankfurt, Berlin Mitte, 10115 or Bayern.
  4. Choose Businesses or People as the Search type.
  5. Set Max results, or 0 for every listing.
  6. Keep Include detail pages on for email, opening hours and reviews, or turn it off for a cheaper list.
  7. Click Start, then download your data as JSON, CSV or Excel from the Output tab.

Input parameters

ParameterTypeRequiredDefaultDescription
searchQuerystringYes—Industry, company name or surname, e.g. Steuerberater, Siemens, Müller
locationstringYes—City, district, postal code or federal state, e.g. Frankfurt, Berlin Mitte, 10115, Bayern
searchTypestringNobusinessbusiness for the business directory, person for private listings
maxResultsintegerNo100Most listings to save. 0 means every listing for the search
includeDetailsbooleanNotrueOpen each listing page for email, fax, mobile, hours, reviews, profile, services, coordinates and contact persons
proxyConfigurationobjectNononeLeave empty. The scraper switches to Apify Proxy by itself if needed

Business search with full profiles:

{
"searchQuery": "Steuerberater",
"location": "Frankfurt",
"searchType": "business",
"maxResults": 100,
"includeDetails": true
}

Private listings, search results only:

{
"searchQuery": "Müller",
"location": "Hamburg",
"searchType": "person",
"maxResults": 50,
"includeDetails": false
}

Output example

A business with a full profile (search keywords and reviews shortened):

{
"company_logo_url": null,
"name": "Bayer Angelika Dr.med.dent. u. Parzer Lola Dr. Zahnärzte",
"description": null,
"address": "Josephsburgstr. 4, 81673 München",
"street": "Josephsburgstr. 4",
"postal_code": "81673",
"city": "München",
"district": "Berg am Laim",
"country": "DE",
"phone": "089 4 31 10 06",
"fax": null,
"mobile": null,
"additional_phones": [],
"email": "dr.angelikabayerzahnaerztin@gmail.com",
"website": "https://www.drbayer.de/",
"category": "Zahnärzte",
"categories": ["Zahnärzte"],
"opening_hours": "Mo 08:00-13:00; Tu 10:00-13:00; Tu 14:30-20:00; We 13:00-19:00; Th 08:00-12:00; Th 13:00-17:30; Fr 08:00-12:00",
"rating": 5.0,
"review_count": 2,
"search_keywords": ["Akupunktur", "Bleaching", "Implantat", "Kinderbehandlung", "professionelle Zahnreinigung"],
"external_review_sources": [
{ "source": "kennstdueinen.de", "rating": 5.0, "count": 2, "url": "https://www.kennstdueinen.de/zahnarzt-muenchen-dr-med-dent-angelika-bayer-zahnaerztin-d229557.html", "included_in_total": true },
{ "source": "google", "rating": null, "count": 23, "url": "https://www.google.de/maps/place/...", "included_in_total": false }
],
"recent_reviews": [
{ "source": "kennstdueinen.de", "rating": 5.0, "author": "anonymous", "date": "27.03.2017", "text": "Das ganze Team ist sehr freundlich und hilfsbereit. Frau Dr. Bayer ist keine reine ...", "url": "https://www.kennstdueinen.de/zahnarzt-muenchen-dr-med-dent-angelika-bayer-zahnaerztin-d229557.html" }
],
"services": [],
"latitude": 48.128572,
"longitude": 11.626442,
"is_premium": false,
"entry_id": "0099123774512",
"last_updated": null,
"contact_persons": [
{ "name": "Bayer Angelika Dr.med.dent. Zahnärzte", "title": "Dr.med.dent.", "phone": "089 12 28 10 78", "email": null, "address": "Josephsburgstr. 4 81673 München, Berg am Laim" }
],
"source_url": "https://adresse.dastelefonbuch.de/M%C3%BCnchen/1-Zahnarzt-Bayer-Angelika-Dr-med-dent-u-Parzer-Lola-Dr-M%C3%BCnchen-Josephsburgstr.html",
"source_platform": "dastelefonbuch.de",
"search_type": "business",
"has_details": true,
"scraped_at": "2026-11-07T10:06:16Z"
}

A search result without its detail page (empty fields left out):

{
"company_logo_url": "https://ies.v4all.de/0122/TB/0337/3/6473/59896473_210x130.png",
"name": "Rudy Michael Steuerberater",
"address": "Kurhessenstr. 1-3, 60431 Frankfurt",
"street": "Kurhessenstr. 1-3",
"postal_code": "60431",
"city": "Frankfurt",
"district": "Eschersheim",
"country": "DE",
"phone": "069 2 40 03-300",
"website": "http://www.steuerberater-rudy.de",
"category": "Steuerberatung",
"categories": ["Steuerberatung"],
"rating": 2.5,
"review_count": 2,
"is_premium": true,
"entry_id": "0060095240214",
"source_url": "https://adresse.dastelefonbuch.de/Frankfurt%20am%20Main/1-0060095240214-Steuerberatung-Rudy-Michael-Steuerberater-Frankfurt-Kurhessenstr.html",
"source_platform": "dastelefonbuch.de",
"search_type": "business",
"has_details": false,
"scraped_at": "2026-11-07T10:05:21Z"
}

Every row has the same fields. With Include detail pages off, those that only the listing page shows, such as email and opening_hours, are null or empty, and has_details is false.

How to use the Das Telefonbuch API in Python and JavaScript

Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("parsebird/das-telefonbuch-scraper").call(run_input={
"searchQuery": "Zahnarzt",
"location": "München",
"searchType": "business",
"maxResults": 200,
"includeDetails": True,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["name"], item["phone"], item["email"], item["website"])

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('parsebird/das-telefonbuch-scraper').call({
searchQuery: 'Elektriker',
location: 'Dortmund',
maxResults: 100,
includeDetails: false,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((row) => console.log(row.name, row.address, row.phone));

Get your token in Apify Console. See every option on the API tab.

Use cases

  • B2B lead generation: build lists of German businesses by industry and region, with phone, email and website.
  • Local sales territories: pull every Handwerker, Arzt or Kanzlei in a set of postal codes for your field team.
  • Market research: count businesses per industry and city, or map them with the coordinates.
  • Reputation research: compare ratings and review sources across competitors.
  • CRM enrichment and data cleaning: check addresses, phone and fax numbers against the directory.
  • Recurring monitoring: schedule runs to catch new or updated listings.

How does Das Telefonbuch Scraper work?

  1. It opens the Das Telefonbuch search for your query and location: the business directory or the residential phone book.
  2. It reads the results page by page, the way the site's own infinite scroll does, so it isn't stopped by the 999-hit display limit.
  3. With detail pages on, it opens each listing's page, five at a time, for the full profile.
  4. It decodes protected email addresses and joins phone numbers the page splits into pieces, so numbers are never cut short.
  5. It saves rows as it goes, so a stopped run keeps its results.

How much does it cost to scrape Das Telefonbuch?

Das Telefonbuch Scraper uses pay-per-event pricing. Compute and proxy costs are included in the event price.

EventFreeBronzeSilverGold
apify-actor-start, per run$0.005$0.005$0.005$0.005
search-result-scraped, per 1,000$1.99$1.79$1.59$1.39
profile-scraped, per 1,000$4.99$4.49$3.99$3.49

Each saved listing is charged once: as a profile when its detail page was read, or as a search result when detail pages are off. If a detail page can't be read, the row keeps its search result data and is charged as a search result.

For example, 1,000 tax advisors with full profiles cost about $4.99 on the Free plan, or $1.99 as a list without detail pages. A start event fires once per run for each GB of run memory, and the default memory stays within one. To cap your spending, set a maximum cost per run in the run options. The run stops at that limit and keeps what it saved.

Das Telefonbuch Scraper only collects data that dastelefonbuch.de shows publicly, without logging in. Web scraping of public data is generally legal, but what you may do with the data depends on your purpose and your country. You can read more in Is web scraping legal?

Listings of private people, and business listings that name a person, are personal data under the GDPR. You need a lawful basis to store or use them, and German law (UWG) restricts cold calls and marketing emails without consent. Review text may be protected by copyright. Check Das Telefonbuch's terms too, and ask a lawyer if you are unsure. This section is not legal advice.

Other scrapers you may like

FAQ

Do I need a Das Telefonbuch account or a proxy? No. The scraper needs no login and no setup. If the site starts blocking, it switches to Apify Proxy by itself.

How many results can I get? As many as the search has. The site's counter stops at "999 Treffer", but the scraper reads past it: in our tests it saved all 271 tax advisors in Frankfurt in 22 seconds, and 1,200 unique lawyers in Berlin. Set Max results to 0 for everything.

Why is the email empty for some businesses? Emails are only on listing pages, so keep Include detail pages on. Even then, not every listing publishes one: in our tests 71% of 250 business profiles had an email.

How often is there a mobile number or a company profile? Rarely. In our tests, mobile numbers appeared on about 1% of 250 business profiles and the "Unternehmensprofil" text on about 5%. When a listing's main number is a mobile number, it's also returned in mobile, with or without detail pages.

Why does a listing have a fax but no phone? Some listings publish only a fax number, and the scraper returns exactly what the listing shows.

Can I search by postal code or district? Yes. Use a 5-digit postal code such as 10115, a district such as Berlin Mitte, or a federal state such as Bayern. Results stay inside that area.

What does a person search return? Names, addresses and phone numbers from the residential phone book, plus coordinates with detail pages on. A surname search can also match businesses named after a person, which Das Telefonbuch lists among private entries.

Why is the district empty for some cities? Not every local publisher shows a district. In our tests Cologne listings had none, while most Berlin and Munich listings had one.

Can I schedule recurring runs? Yes. Use Apify Schedules to run daily, weekly or at any interval, and connect the results to Google Sheets or your CRM with integrations.

Something doesn't work. Where do I report it? Open a ticket on the Issues tab. Include your run link so we can look into it.