Karriere.at Search Scraper avatar

Karriere.at Search Scraper

Pricing

from $2.99 / 1,000 karriere.at job records

Go to Apify Store
Karriere.at Search Scraper

Karriere.at Search Scraper

Scrape job listings from Karriere.at, Austria's leading job board. Extract job titles, companies, locations, salary ranges, contract types, and descriptions for Austrian recruitment and job market analysis.

Pricing

from $2.99 / 1,000 karriere.at job records

Rating

0.0

(0)

Developer

Jobs API

Jobs API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 days ago

Last modified

Share

Karriere.at jobs search scraper

This Apify Actor extracts complete, source-backed job records locally or in Apify Cloud from the public Karriere.at search and detail pages.

Modes

  • search discovers jobs for one query and location, then enriches each result from its official detail page.
  • searchMultiple runs bounded searches for each value in queries and deduplicates the detail records.
  • single enriches one official https://www.karriere.at/jobs/<numeric-id> URL.
  • multiple enriches a bounded list of official detail URLs.
  • startUrls accepts official search or detail URLs.

The default input is in ./INPUT.json. Reproducible examples are provided in INPUT-single.json, INPUT-multiple.json, INPUT-search-multiple.json, INPUT-start-urls.json, and INPUT-negative.json.

Extraction contract

Each dataset row is written only after the detail page exposes a matching numeric ID, canonical URL, title, employer, location, and a sufficiently rich description. The mapper preserves published JSON-LD and HTML-derived descriptions, headings, bullets, sections, job facts, candidate criteria, employment, work model, location, salary, dates, company metadata, and explicit application links. Missing optional source values are omitted; the canonical job URL is never used as a fabricated application URL.

Rows are buffered until validation succeeds, deduplicated by official job ID and URL, and written with strict schemas. RUN_SUMMARY, RUN_DIAGNOSTICS, RUN_SKIPS, REQUEST_RECEIPTS, RUN_HEALTH, and RUN_METADATA stay in the key-value store rather than being emitted as job rows.

Apify's platform status is only SUCCEEDED or FAILED; resultStatus separately reports COMPLETE, LIMITED, SKIPPED, DEFERRED, NO_DATA, or FAILED. If genuine records were persisted before a later non-block error, the run remains SUCCEEDED with resultStatus: LIMITED. A fatal zero-row run calls Actor.fail(). A confirmed source barrier stops later requests and discards buffered rows. Diagnostics are KVS-only and never appear in the job dataset.

Local verification

npm install
npm test
npm run lint
npm run check
npm run validate
npx --yes apify-cli validate-schema
npx --yes apify-cli run --purge --input-file INPUT.json

The Actor uses ordinary native HTTPS requests sequentially with bounded timeouts and a 5 MB response cap. It does not use a proxy, fingerprint spoofing, CAPTCHA/WAF bypass, or reader mirror. HTTP 401/403/429/451 or visible source-authored challenge text stops further requests and records the evidence in KVS; no blocked or diagnostic item is written as a job row.