# Australia Dentist Directory Scraper (`happitap/australia-dentist-directory-scraper`) Actor

Extract premium dental clinic leads (phone, website, address, reviews) across Australia. Perfect for B2B outreach and healthcare marketing

- **URL**: https://apify.com/happitap/australia-dentist-directory-scraper.md
- **Developed by:** [HappiTap](https://apify.com/happitap) (community)
- **Categories:** Lead generation, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Australia Dentist Directory Scraper

**Extract premium dental clinic leads across Australia.**

The Australia Dentist Directory Scraper automatically extracts verified dentist, orthodontist, and dental clinic details from top Australian health directories, providing you with high-ticket B2B healthcare leads.

### What can Australia Dentist Directory Scraper do?

- ✅ **Extract Premium Leads** - Get clinic names, addresses, and direct phone numbers.
- ✅ **Identify Specialties** - Know exactly what type of dental care the clinic provides.
- ✅ **Assess Quality** - Scrape ratings and review counts to target high-quality clinics.
- ✅ **Extract URLs** - Gather profile listing URLs for further research.
- ✅ **Export formats** - Download data in JSON, CSV, Excel, or HTML formats.
- ✅ **Integrations** - Connect seamlessly with API, webhooks, Make, or Zapier.
- ✅ **No coding required** - Use our simple interface to start scraping immediately.

### Why scrape Dental Clinics?

Dental directories contain highly valuable data for:

- 🎯 **B2B Medical Suppliers** - Target clinics that need dental equipment, chairs, and consumables.
- 📊 **Healthcare Marketing Agencies** - Connect with dentists to offer digital marketing services.
- 📍 **Software Providers** - Pitch practice management and booking software to dental clinics.

### What data can you extract?

| Data Field | Description | Example |
|------------|-------------|---------|
| **clinicName** | The name of the clinic | "Sydney Smiles Dental" |
| **specialty** | Dental specialty | "Dentist" |
| **address** | The full address | "123 Dental Way, Sydney NSW" |
| **phone** | Direct contact number | "02 1234 5678" |
| **rating** | Clinic rating | "4.9 (150 reviews)" |
| **listingUrl** | Link to the directory listing | "https://healthengine.com.au/..." |

### How to scrape Dental Clinic data

1. **Click "Try for free"** to start using the actor.
2. **Enter your input** - Provide a keyword (e.g., "dentist") and location (e.g., "Sydney").
3. **Configure options** - Set the maximum number of leads you want to extract.
4. **Start the scraper** - Click Start and let the actor do the work.
5. **Download results** - Export your leads as JSON, CSV, or Excel.

### Input

Configure the scraper with these key settings:

- **Keyword** - The specific dental niche (e.g., 'dentist', 'orthodontist', 'periodontist').
- **Location** - The Australian location (e.g., 'Sydney', 'NSW', 'Australia').
- **Maximum Leads** - The total number of records to extract.
- **Proxy Configuration** - Apify Residential Proxy is highly recommended.

### Output

You can download data in multiple formats:

- **JSON** - For developers and programmatic access
- **CSV** - For easy import into Excel or CRM systems
- **Excel** - Ready-to-use spreadsheet

#### Output example

```json
{
    "clinicName": "Sydney Smiles Dental",
    "specialty": "Dentist",
    "address": "123 Dental Way, Sydney NSW",
    "phone": "0212345678",
    "rating": "4.9 (150 reviews)",
    "listingUrl": "https://healthengine.com.au/...",
    "scrapedAt": "2026-07-02T15:00:00Z"
}
```

### How much does it cost?

This actor uses a Pay-Per-Event (PPE) pricing model:

- **Base Fee**: $0.25 per start
- **Lead Fee**: $4.00 per 1,000 leads extracted ($0.004 per lead)

**Free tier**: Apify provides $5 in free monthly credits, allowing you to extract over 1,000 high-ticket leads for free!

### Is it legal to scrape?

Yes, scraping publicly available data is generally legal. This Actor only extracts public information.

**Best practices**:

- Use the data ethically for B2B outreach.
- Respect the target site's Terms of Service.
- Ensure compliance with privacy laws when handling contact information.

### Integrations

Connect with 1000+ apps:

- **Google Sheets** - Auto-update spreadsheets with new leads.
- **Slack** - Get notifications when scraping finishes.
- **Webhooks** - Send data directly to your CRM.
- **API** - Programmatic access for developers.

***

**License**: Apache-2.0 | **Version**: 1.0.0

# Actor input Schema

## `startUrls` (type: `array`):

List of search URLs to scrape.

## `maxLeads` (type: `integer`):

Maximum number of dental clinic leads to extract.

## `proxyConfiguration` (type: `object`):

Proxy settings. Apify Residential Proxy is highly recommended.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.yellowpages.com.au/search/listings?clue=dentist&locationClue=Sydney"
    }
  ],
  "maxLeads": 100,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://www.yellowpages.com.au/search/listings?clue=dentist&locationClue=Sydney"
        }
    ],
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("happitap/australia-dentist-directory-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": [{ "url": "https://www.yellowpages.com.au/search/listings?clue=dentist&locationClue=Sydney" }],
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("happitap/australia-dentist-directory-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://www.yellowpages.com.au/search/listings?clue=dentist&locationClue=Sydney"
    }
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call happitap/australia-dentist-directory-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=happitap/australia-dentist-directory-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/A3b257UDTr7MgGPMy/builds/q7kkJUaejR4sVZXNP/openapi.json
