SEEK Jobs Scraper avatar

SEEK Jobs Scraper

Pricing

from $2.15 / 1,000 item processeds

Go to Apify Store
SEEK Jobs Scraper

SEEK Jobs Scraper

Scrape public SEEK Australia and New Zealand job listings by keyword and location for recruiting, lead generation, and labor-market research.

Pricing

from $2.15 / 1,000 item processeds

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Extract public job listings from SEEK search results in Australia and New Zealand. The actor saves structured job data such as title, company, location, salary text, classification, job URL, and source search metadata.

Value proposition / what it does

SEEK Jobs Scraper turns SEEK search pages into structured datasets for recruiting, labor-market analysis, and automation. What data it returns: job titles, companies, locations, salary text, classifications, job URLs, and source search metadata.

  • Searches SEEK Australia or SEEK New Zealand by keyword and location.
  • Accepts one search, multiple keyword/location searches, or direct SEEK search URLs.
  • Returns clean dataset items for job market research, lead sourcing, recruitment analytics, and role monitoring.
  • Stops at your maxItems limit to keep runs predictable.

Who uses it and use cases

Recruiters, hiring teams, labor-market researchers, sales teams, and automation builders use this actor to monitor role demand, collect hiring leads, and feed job listings into spreadsheets, CRMs, or AI workflows.

Input example

{
"query": "software engineer",
"location": "Sydney",
"country": "au",
"maxItems": 10
}

Multiple searches

{
"queries": [
{ "query": "software engineer", "location": "Sydney", "country": "au" },
{ "query": "accountant", "location": "Auckland", "country": "nz" }
],
"maxItems": 20
}

Input settings

FieldTypeDescription
querystringKeyword or phrase to search for when queries is not provided.
locationstringCity, region, or suburb, such as Sydney or Auckland.
countrystringSEEK site: au for Australia or nz for New Zealand.
queriesarrayOptional list of searches or direct SEEK search URLs. Overrides the single search fields.
maxItemsintegerMaximum number of job listings to save, from 1 to 50.

Output example

{
"jobId": "123456789",
"url": "https://www.seek.com.au/job/123456789",
"title": "Software Engineer",
"companyName": "Example Company",
"location": "Sydney NSW",
"salaryText": "$120k - $140k",
"classification": "Information & Communication Technology",
"shortDescription": "Build and maintain production systems...",
"sourceUrl": "https://www.seek.com.au/jobs?keywords=software+engineer&where=Sydney",
"sourceQuery": "software engineer",
"sourceLocation": "Sydney",
"scrapedAt": "2026-07-15T08:37:26.614Z"
}

Output fields

FieldDescription
jobIdSEEK job identifier when available.
urlCanonical job listing URL.
titleJob title.
companyNameHiring company name when shown.
locationListing location text.
salaryTextSalary or pay range text when shown.
classificationSEEK classification/category when shown.
shortDescriptionShort listing description or preview text.
sourceUrlSearch URL used to collect the item.
sourceQueryKeyword used for the source search.
sourceLocationLocation used for the source search.
scrapedAtISO timestamp when the item was saved.

Pricing

This actor uses pay-per-event pricing. Each run has a start event and a per-item event for each saved job listing.

EventFreeBronzeSilverGoldPlatinumDiamond
Run start$0.035$0.035$0.035$0.035$0.035$0.035
Saved job item$0.0041175$0.0035804$0.0027927$0.0021482$0.0014322$0.0010025

The exact price for your account is shown on the actor pricing tab before you run it.

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/seek-jobs-scraper').call({
query: 'software engineer',
location: 'Sydney',
country: 'au',
maxItems: 10,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('fetch_cat/seek-jobs-scraper').call(run_input={
'query': 'software engineer',
'location': 'Sydney',
'country': 'au',
'maxItems': 10,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

cURL

curl -X POST 'https://api.apify.com/v2/acts/fetch_cat~seek-jobs-scraper/runs?token=YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"query":"software engineer","location":"Sydney","country":"au","maxItems":10}'

MCP and AI agents

Use this actor from Apify MCP or other AI-agent tools when you need fresh SEEK job listings as structured data. Provide a concise keyword, location, country, and max item limit to keep responses focused.

Claude CLI add command

$claude mcp add apify -- npx -y @apify/actors-mcp-server --actors fetch_cat/seek-jobs-scraper

JSON config block

{
"mcpServers": {
"apify": {
"command": "npx",
"args": ["-y", "@apify/actors-mcp-server", "--actors", "fetch_cat/seek-jobs-scraper"],
"env": { "APIFY_TOKEN": "YOUR_APIFY_TOKEN" }
}
}
}

Example prompts

  • "Find recent software engineer jobs in Sydney on SEEK and summarize the hiring companies."
  • "Collect 10 accountant roles in Auckland from SEEK and return title, company, location, and URL."
  • "Monitor SEEK for data analyst roles in Melbourne and save the dataset for spreadsheet export."

Input recipes

  • Sydney software hiring: query="software engineer", location="Sydney", country="au".
  • Auckland finance roles: query="accountant", location="Auckland", country="nz".
  • Multi-city monitoring: use queries with several keyword/location objects and one shared maxItems cap.

FAQ

Can I scrape both Australia and New Zealand? Yes. Set country to au or nz, or provide per-search country values in queries.

Why are some fields null? SEEK does not show every field on every listing. Missing salary, classification, or company values are returned as null.

Can I use direct SEEK search URLs? Yes. Add objects with a url field inside queries.

Support

If a run does not return the jobs you expected, include the run ID or run URL, the input JSON, expected output, actual output, and a reproducible public URL such as https://www.seek.com.au/jobs?keywords=software+engineer&where=Sydney when contacting support.