# SEEK Jobs Scraper - AU/NZ Hiring Data (`benthepythondev/seek-jobs-scraper`) Actor

Scrape SEEK Australia and New Zealand jobs: title, company, location, work type, salary, classification, bullet points and URL.

- **URL**: https://apify.com/benthepythondev/seek-jobs-scraper.md
- **Developed by:** [ben](https://apify.com/benthepythondev) (community)
- **Categories:** Jobs, Business, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.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 a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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

## SEEK Jobs Scraper - Australia & New Zealand Hiring Data

Scrape job listings from **SEEK**, the leading employment marketplace in Australia and New Zealand. Get job title, hiring company, advertiser ID, location, area, work type, work arrangement, classification, salary label, bullet points, teaser text, listing date, expiry date, company logo URL and direct job URL. Export the data to JSON, CSV or Excel, run it on a schedule, call it through the API, or connect it to Make, Zapier, n8n, Airtable, Google Sheets, a recruiting CRM or your own job-board backend.

### What is the SEEK Jobs Scraper?

SEEK is one of the strongest job-market data sources in Australia and New Zealand. Recruiters, agencies and employers use it to publish roles across software engineering, healthcare, construction, finance, sales, customer support, education, mining, trades and professional services. For recruiters and B2B teams, SEEK listings are a live signal of which companies are hiring, what roles they need, and where demand is concentrated.

This actor extracts SEEK search results through SEEK's public JSON search endpoint. The normal HTML search page is protected, but the JSON endpoint returns clean structured search cards over plain HTTP. That keeps the actor fast, low-cost and reliable: no browser, no proxy, no account and no paid unblocker are required.

### What data does it extract?

- **Job title**
- **Hiring company**
- **Advertiser ID**
- **Location and area**
- **Work type**
- **Work arrangement**
- **Classification and subclassification**
- **Salary label** when shown
- **Bullet points**
- **Teaser / summary text**
- **Listing date**
- **Expiry date**
- **Promoted listing flag**
- **Company logo URL**
- **Direct SEEK job URL**
- **Search URL used**

### Input

| Field | Type | Description |
|-------|------|-------------|
| `keyword` | string | Role, skill or search keyword. |
| `location` | string | Optional location such as Sydney, Melbourne, Brisbane, Auckland or Wellington. |
| `countries` | array | `au` for Australia and `nz` for New Zealand. |
| `maxResults` | integer | Maximum jobs returned per country. |

### Example input

```json
{
  "keyword": "python",
  "location": "Sydney",
  "countries": ["au"],
  "maxResults": 50
}
````

For New Zealand:

```json
{
  "keyword": "data engineer",
  "location": "Auckland",
  "countries": ["nz"],
  "maxResults": 50
}
```

### Output

Each dataset item is one SEEK job:

```json
{
  "job_id": "81234567",
  "title": "Python Developer",
  "company": "Example Pty Ltd",
  "advertiser_id": "123456",
  "location": "Sydney NSW",
  "area": "CBD, Inner West & Eastern Suburbs",
  "work_type": "Full time",
  "work_arrangement": "Hybrid",
  "classification": "Information & Communication Technology",
  "subclassification": "Developers/Programmers",
  "salary": "$140k - $160k + super",
  "bullet_points": ["Modern engineering team", "Hybrid work", "Python and cloud stack"],
  "teaser": "Join a growing product team building internal platforms...",
  "listing_date": "2026-07-02T00:00:00Z",
  "expires_at": "2026-08-01T00:00:00Z",
  "is_promoted": false,
  "company_logo_url": "https://...",
  "url": "https://www.seek.com.au/job/81234567",
  "search": "https://www.seek.com.au/api/jobsearch/v5/search?siteKey=AU-Main&keywords=python&page=1"
}
```

### Use cases

- **Recruiting market intelligence** - monitor hiring demand by role, location, work type or classification.
- **Lead generation** - identify Australian and New Zealand companies actively hiring, a strong signal for HR software, payroll, staffing, training, SaaS, IT services and outsourcing.
- **Salary research** - collect published salary labels for roles where SEEK displays compensation.
- **Job-board aggregation** - add SEEK job cards to a niche job board, newsletter or internal talent portal.
- **Workforce analytics** - track demand for skills such as Python, React, data engineering, cybersecurity, mining, healthcare or sales.
- **Competitive hiring alerts** - schedule searches for competitors, categories or regions.

### Why use this actor?

The actor is designed around the stable JSON search response rather than the defended HTML page. That means it can run in a small container and complete quickly on Apify, which is critical for daily auto-tests and scheduled monitoring. It returns normalized fields with enough context for downstream filtering, spreadsheets, lead enrichment and dashboards.

It also supports both Australia and New Zealand through the `countries` input. Run one query across both markets, or keep separate tasks per country and location for clean reporting.

### Tips

- Use specific role keywords for cleaner datasets, such as `python developer`, `data engineer`, `project manager`, `nurse` or `electrician`.
- Add a `location` when you care about one metro market.
- Use `countries: ["au", "nz"]` to compare Australia and New Zealand.
- De-duplicate downstream by `job_id` or `url`.
- Combine this with contact-enrichment actors when building sales outreach lists from hiring signals.

### FAQ

**Does this require a SEEK account?** No. It reads public search-result data.

**Does it use a browser or proxy?** No. It calls the JSON search endpoint directly.

**Can I scrape both Australia and New Zealand?** Yes. Use `au`, `nz`, or both in the `countries` input.

**Does it include salary?** It returns SEEK's salary label when the listing exposes one.

**Can I export the data?** Yes. Apify supports JSON, CSV, Excel, API access and webhooks.

**Is this useful for lead generation?** Yes. Active job postings are strong buying-signal data for many B2B services.

### You might also like

- [StepStone Scraper](https://apify.com/benthepythondev/stepstone-scraper) for European jobs.
- [HiringCafe Scraper](https://apify.com/benthepythondev/hiring-cafe-scraper) for enriched global jobs.
- [BuiltIn Jobs Scraper](https://apify.com/benthepythondev/builtin-jobs-scraper) for tech jobs and salary ranges.
- [YC Jobs Scraper](https://apify.com/benthepythondev/yc-jobs-scraper) for startup jobs.
- [We Work Remotely Jobs Scraper](https://apify.com/benthepythondev/weworkremotely-jobs-scraper) for remote jobs.

### Keywords

SEEK scraper, SEEK jobs scraper, SEEK Australia jobs API, SEEK New Zealand jobs scraper, AU jobs data, NZ jobs data, job listings scraper, recruitment data, hiring signals, scrape SEEK jobs, export SEEK jobs to CSV, Apify jobs scraper, Australian job market data, New Zealand job market data.

# Actor input Schema

## `keyword` (type: `string`):

Role, skill or search keyword.

## `location` (type: `string`):

Optional SEEK location filter, such as Sydney, Melbourne, Brisbane, Auckland or Wellington.

## `countries` (type: `array`):

SEEK country sites to query. Use au for Australia and nz for New Zealand.

## `maxResults` (type: `integer`):

Maximum jobs returned per country.

## Actor input object example

```json
{
  "keyword": "python",
  "countries": [
    "au"
  ],
  "maxResults": 10
}
```

# 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 = {
    "keyword": "python",
    "countries": [
        "au"
    ],
    "maxResults": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("benthepythondev/seek-jobs-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 = {
    "keyword": "python",
    "countries": ["au"],
    "maxResults": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("benthepythondev/seek-jobs-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 '{
  "keyword": "python",
  "countries": [
    "au"
  ],
  "maxResults": 10
}' |
apify call benthepythondev/seek-jobs-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "SEEK Jobs Scraper - AU/NZ Hiring Data",
        "description": "Scrape SEEK Australia and New Zealand jobs: title, company, location, work type, salary, classification, bullet points and URL.",
        "version": "1.0",
        "x-build-id": "NNKPuzwN2nQuZeY61"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/benthepythondev~seek-jobs-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-benthepythondev-seek-jobs-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/benthepythondev~seek-jobs-scraper/runs": {
            "post": {
                "operationId": "runs-sync-benthepythondev-seek-jobs-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/benthepythondev~seek-jobs-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-benthepythondev-seek-jobs-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",
                "properties": {
                    "keyword": {
                        "title": "Keyword",
                        "type": "string",
                        "description": "Role, skill or search keyword.",
                        "default": "python"
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "Optional SEEK location filter, such as Sydney, Melbourne, Brisbane, Auckland or Wellington."
                    },
                    "countries": {
                        "title": "Countries",
                        "type": "array",
                        "description": "SEEK country sites to query. Use au for Australia and nz for New Zealand.",
                        "default": [
                            "au"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxResults": {
                        "title": "Max results per country",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Maximum jobs returned per country.",
                        "default": 50
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
