Skip to content

Seek Job Scraper

Try for free

Extract public job listings from Seek, JobStreet, and JobsDB. Search by keyword, location, or a results URL and save salary, company, applicant, and contact details when the listing publishes them.

💼 SEEK Job Scraper

Search public job listings on SEEK, JobStreet, and JobsDB and get clean data: title, salary, company profile, location, work type, applicant counts, full description, and apply link. No login and no API key. $0.001 per job, which is $1 per 1,000.

✨ Why use SEEK Job Scraper?

  • 🔓 No login or API key — reads public job listings only.
  • 🌏 Eight job sites — Australia, New Zealand, Hong Kong, Indonesia, Malaysia, the Philippines, Singapore, and Thailand.
  • 🎚️ Deep filters — location, radius, posting date, work type, work arrangement, salary range, classification, and applicant count.
  • 🏢 Company context — advertiser, company profile with industry, size, rating, and perks, plus a link to the company's other open jobs.
  • ✉️ Contact filters — keep only jobs that publish an email, a phone number, or both.
  • 💸 Very cheap — a flat $1 per 1,000 jobs.

🎯 Use cases

  • 🔍 Job market research — see what employers pay and ask for in a role and city.
  • 🧲 Recruiting leads — find hiring companies and the recruiter contact details they publish.
  • 📊 Salary benchmarking — collect published salary labels for a title.
  • 🚨 Job alerts and aggregators — feed fresh listings into your own board or alerts.
  • 🏗️ Competitor hiring signals — watch which roles a company is opening.

🚀 How to use

  1. Enter a Search term, such as software engineer, or paste a Search results URL or a single job link.
  2. Pick the Country (jobs site) and set Maximum jobs (default 10, up to 550).
  3. Optionally narrow by location, radius, date, work type, arrangement, salary, or applicants.
  4. Click Start.
  5. Export the dataset as JSON, CSV, or Excel, or fetch it through the API.

📥 Input

FieldKeyDescription
Search termsearchTermJob title or keyword.
Search results URLsearchUrlA full SEEK, JobStreet, or JobsDB search URL, or one /job/ link. When set, the filters below are ignored.
Maximum jobsmaxResults1 to 550, since SEEK caps one search at 550. Default 10.
Countrycountryaustralia, new zealand, hongkong, indonesia, malaysia, philippines, singapore, or thailand.
Location, State, Postcode, Radiuslocation, state, postCode, radiusWhere to search, and how far in kilometres.
Posted within daysdateRangeOnly jobs posted in the last N days.
Sort bysortByKeywordRelevance or ListedDate.
Work types / arrangementsworkTypes, workArrangementsFull time, part time, contract, casual; on-site, hybrid, remote.
SalarysalaryType, salaryMin, salaryMaxAnnual, monthly, or hourly range in local currency.
Classificationclassification, subclassificationsSEEK classification ids.
ApplicantsminApplicants, maxApplicantsJobs that hide the count are skipped when set.
Title keywordsincludeOneInTitleKeep a job only when its title has one of these words.
Contact filtersrequireEmail, requirePhone, requireEmailAndPhoneKeep only jobs that publish those contacts.
Proxy configurationproxyConfigurationDatacenter by default.
{
  "searchTerm": "software engineer",
  "country": "australia",
  "location": "Sydney",
  "maxResults": 10,
  "workArrangements": ["hybrid", "remote"],
  "proxyConfiguration": {
    "useScrapelyProxy": true,
    "scrapelyProxyGroups": ["DATACENTER"]
  }
}

📤 Output

One row per job.

FieldDescription
id, jobLink, applyLinkJob id, public page, and apply page
title, salary, workTypes, workArrangementsTitle, published salary label, work type, and arrangement
contentBullet points, job hook, and the description
classificationInfo, joblocationInfoClassification and location, including country and suburb
advertiser, companyProfileHiring company, with industry, size, rating, reviews, website, and perks
numApplicants, phoneNumbers, emailsApplicant count and contact details when published
employerQuestions, recruiterProfileScreening questions and recruiter details when published
listedAt, expiresAtUtcWhen the job was listed and when it expires

Example item (trimmed):

{
  "id": "95163389",
  "jobLink": "https://au.seek.com/job/95163389",
  "applyLink": "https://au.seek.com/job/95163389/apply",
  "title": "Principal Software Architect",
  "salary": null,
  "workTypes": "Full time",
  "content": {
    "bulletPoints": [
      "Lead the architecture of global data platforms",
      "Drive technical strategy and platform innovation",
      "Hybrid work, wellbeing benefits, real impact"
    ]
  },
  "classificationInfo": {
    "classification": "Information & Communication Technology",
    "subClassification": "Architects"
  },
  "joblocationInfo": {
    "displayLocation": "Sydney NSW",
    "country": "Australia",
    "countryCode": "AU"
  },
  "advertiser": { "id": "21190750", "name": "Cotality", "isVerified": true },
  "companyProfile": {
    "name": "Cotality",
    "size": "5,001-10,000 employees",
    "website": "https://www.cotality.com/au",
    "numberOfReviews": 32,
    "rating": 2.8
  },
  "listedAt": "2026-10-09T03:44:33.724Z",
  "expiresAtUtc": "2026-11-08T12:59:59.999Z"
}

💰 Pricing

$0.001 per job ($1 per 1,000 jobs). Platform usage is billed on top at standard rates: compute $0.30 per GB-hour and datacenter proxy $1 per GB.

Worked example: 10 jobs cost 10 × $0.001 = $0.01 in job fees. With measured platform usage, a 10-job search came to about $0.012.

❓ FAQ

Is it legal to scrape SEEK?

The actor reads public job listings that anyone can open. Follow the site's terms and privacy laws such as GDPR for personal contact data.

Do I need a login or a proxy?

No login. Datacenter proxies are used by default and billed per GB.

How many jobs can I get?

Up to 550 per search, because SEEK caps one search there. Split larger jobs by location, date, or classification.

What if a field is empty?

Salary, applicant counts, and contacts are only filled when the advertiser publishes them, so null or empty lists are normal.

Can I schedule it or use the API?

Yes. Use Schedules for daily runs, or call the REST API and read the dataset in any format.

⚠️ Limits

  • About 540 jobs per search is the site cap (SEEK stops after page 27). The status message says how many matches exist when there are more; narrow the search to reach them.
  • joblocationInfo.area and locationIds come back empty because the public data does not include them.
  • Signed-in salary estimates are not included, only the salary the advertiser publishes.
  • When a Search results URL is set, all other filters are ignored.
  • Jobs that hide the applicant count are skipped when you set a minimum or maximum applicants filter.

Related actors

G2
4.7/5
Excellent
Trustpilot

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.

No credit card. No setup calls.