# Hipages Lead Scraper (`parsedom/hipages-lead-scraper`)

A lead scraper for extracting business details from Hipages, including names, contact information, ratings, and more. It supports pagination and proxy configuration, making it suitable for lead generation and market research.

- **URL**: https://beta-securitybyobscurity.apify.com/parsedom/hipages-lead-scraper.md
- **Developed by:** [Parsedom](https://beta-securitybyobscurity.apify.com/parsedom) (community)
- **Categories:** Lead generation, Automation
- **Stats:** 46 total users, 8 monthly users, 100.0% runs succeeded, 4 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

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

# README

## Hipages Business Directory Scraper 🚀

The Hipages Business Directory Scraper is an Apify actor designed to extract in-depth information about businesses listed on [hipages.com.au](https://hipages.com.au). This actor efficiently retrieves data across categories, including business names, contact details, ratings, and other relevant information for market research or lead generation.

### ✨ Features

- 🏢 **Comprehensive Business Details**: Extracts data like business name, location, contact number, ratings, total hires, recommendations, and other details.
- 📄 **Pagination Support**: Automatically handles pagination to capture all relevant business listings across multiple pages.
- 🔐 **Proxy Support**: Allows the specification of a custom proxy URL to avoid IP bans or restrictions.

### 💡 Why Use Hipages Business Directory Scraper?

This actor is ideal for:

- **Market Research**: Gather insights into business offerings across various industries and regions.
- **Lead Generation**: Build a robust contact database for potential outreach.
- **Data Enrichment**: Enhance your datasets with comprehensive business details.

### 🚀 How to Use Hipages Scraper

1. **Prepare Your Input**: Supply the starting URLs of the business categories or regions you want to scrape.Provide a proxy URL to avoid IP blocks.

   Example Input:

   ```json
   {
     "startUrl": [
       { "url": "https://hipages.com.au/find/electricians/nsw/sydney" },
       { "url": "https://hipages.com.au/find/door_installation/act" }
     ],
     "proxyUrl": "http://username:password@proxyserver:port"
   }

   ```

2. **Run the Actor**:

   - Use the Apify platform to execute the actor with your prepared input.
   - **Monitor Progress**: Track real-time updates and request logs in the Apify console.

3. **Retrieve Results**:

   - After the actor completes, the extracted data is stored in a dataset.
   - **Download Options**: Access results in formats like JSON, CSV, or Excel from the Apify console or configure automated exports.

### 📊 Example Output

Below is a sample output structure, available in formats like JSON, CSV, or Excel:

#### JSON

````json
[{
	"URL": "https://hipages.com.au/connect/greatersydneyelectrical2",
	"name": "Greater Sydney Electrical",
	"location": "Based in Sydney NSW 2000",
	"website": "http://greatersydneyelectrical.com.au/",
	"email": "andrewhadi@outlook.com",
	"telephone": "0490 514 537",
	"headline": "WE ARE REPUTABLE WITHIN THE MARKETPLACE AND OUR BUSINESS CONTINUES TO GROW BY\nREFERRALS FROM OUR CLIENTS.",
	"rating": 5,
	"totalRatings": 56,
	"totalHired": 74,
	"totalRecommendations": 60
},
{
	"URL": "https://hipages.com.au/connect/jcgelectricalservicesaustraliaptyltd",
	"name": "JCG Electrical Services Australia Pty Ltd",
	"location": "Based in Sydney NSW 2145",
	"website": "",
	"email": "george@jcgelec.com.au",
	"telephone": "0421 679 993",
	"headline": "Licensed and insured electricians with over 10 years of industrial experience.\nHonest and provide quality service. When we perform work on your property, we\ntreat it like its ours.",
	"rating": 5,
	"totalRatings": 20,
	"totalHired": 32,
	"totalRecommendations": 22
}]

# Actor input Schema

## `startUrl` (type: `array`):

URLs to start with.
## `proxyUrl` (type: `object`):

Select proxies to be used by your crawler.

## Actor input object example

```json
{
  "startUrl": [
    {
      "url": "https://hipages.com.au/find/door_installation/act"
    }
  ],
  "proxyUrl": {
    "useApifyProxy": true
  }
}
````

# 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 = {
    "startUrl": [
        {
            "url": "https://hipages.com.au/find/door_installation/act"
        }
    ],
    "proxyUrl": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("parsedom/hipages-lead-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 = {
    "startUrl": [{ "url": "https://hipages.com.au/find/door_installation/act" }],
    "proxyUrl": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("parsedom/hipages-lead-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 '{
  "startUrl": [
    {
      "url": "https://hipages.com.au/find/door_installation/act"
    }
  ],
  "proxyUrl": {
    "useApifyProxy": true
  }
}' |
apify call parsedom/hipages-lead-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Hipages Lead Scraper",
        "description": "A lead scraper for extracting business details from Hipages, including names, contact information, ratings, and more. It supports pagination and proxy configuration, making it suitable for lead generation and market research.",
        "version": "0.0",
        "x-build-id": "EbDqCib6TeJ62LBtp"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parsedom~hipages-lead-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parsedom-hipages-lead-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parsedom~hipages-lead-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parsedom-hipages-lead-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parsedom~hipages-lead-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parsedom-hipages-lead-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "startUrl",
                    "proxyUrl"
                ],
                "properties": {
                    "startUrl": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "URLs to start with.",
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "proxyUrl": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Select proxies to be used by your crawler."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
