Laborum Jobs Search Scraper avatar

Laborum Jobs Search Scraper

Pricing

from $2.99 / 1,000 job details

Go to Apify Store
Laborum Jobs Search Scraper

Laborum Jobs Search Scraper

Extract rich, current job listings from Laborum.cl with clean descriptions, job attributes, search context, and stable URLs.

Pricing

from $2.99 / 1,000 job details

Rating

0.0

(0)

Developer

Jobs API

Jobs API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 hours ago

Last modified

Share

This Apify Actor extracts source-backed public jobs locally or in Apify Cloud from Laborum.cl. It uses the official public searchV2 and fichaAvisoNormalizada HTTPS APIs, enriches each candidate with the normalized detail response, and writes only complete job records to the default dataset.

The implementation does not use an Apify proxy, browser fingerprinting, stealth plugins, or fabricated application URLs. Request metadata, diagnostics, and rejected candidates are kept in KVS records rather than emitted as dataset rows; each response is capped at 5 MB.

Modes

  • search: one bounded keyword search, optional client-side location filter.
  • searchMultiple: bounded searches for several queries with ID deduplication.
  • single: one official Laborum detail URL.
  • multiple: several official Laborum detail URLs.
  • startUrls: a mix of official search and detail URLs.

All modes cap pages, records, concurrency, and request timeouts. Search candidates are enriched through the official normalized-detail endpoint before they can be written.

Input

{
"mode": "search",
"query": "desarrollador",
"location": "Santiago",
"maxItems": 3,
"maxPages": 1,
"concurrency": 4,
"requestTimeoutSecs": 25
}

Direct modes accept URLs of the form https://www.laborum.cl/empleos/<slug>-<numeric-id>.html. Search start URLs may be the home page, /empleos.html, or /empleos-busqueda-<query>.html.

Dataset quality

Each row has a stable laborum-<id> identifier, canonical public URL, title, employer, structured location, employment/work details, source dates/status, rich plain-text and sanitized HTML descriptions, headings/sections/bullets, requirements, qualifications, benefits, salary fields when published, explicit application links when published, raw source provenance, request receipts, and verification flags. Null, blank, and empty values are removed before writing. Records must pass identity, canonical URL, HTTP 200, and description-completeness checks.

The dataset schema is strict (.actor/dataset_schema.json). Run state is stored under RUN_SUMMARY, RUN_DIAGNOSTICS, RUN_SKIPS, REQUEST_RECEIPTS, RUN_HEALTH, and RUN_METADATA.

Local development

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

The repository's reproducible inputs include INPUT-single.json, INPUT-multiple.json, INPUT-search-multiple.json, INPUT-start-urls.json, and INPUT-negative.json. The negative input verifies that a missing official detail produces a structured KVS diagnostic and no dataset row.

Responsible use

Use the Actor only for publicly available information, respect Laborum's terms and applicable law, and keep request limits bounded. A target-side access block is reported honestly; it is not bypassed.