OCC Mundial Jobs Search Scraper avatar

OCC Mundial Jobs Search Scraper

Pricing

from $2.99 / 1,000 job details

Go to Apify Store
OCC Mundial Jobs Search Scraper

OCC Mundial Jobs Search Scraper

Extract rich OCC Mundial job postings including compensation, location, company, employment details, skills, dates, full descriptions, benefits, and published contact information.

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 complete, source-verified job postings from the official OCC Mundial public listing and detail routes.

The implementation supports bounded local and Apify Cloud runs: it uses bounded native HTTPS requests and Cheerio, accepts only official OCC HTTPS URLs, and never uses a proxy, Jina Reader, browser automation, or an access-control bypass. If the official site returns an access challenge, the Actor fails closed, emits no unverifiable dataset rows, and records a structured diagnostic in RUN_DIAGNOSTICS.

What it extracts

Each emitted row is a complete job record enriched from the detail page. Depending on what OCC publishes, this includes:

  • title, job ID, canonical URL, company, company URL/logo, verification flags, and location;
  • salary text and structured salary values, benefits, category, education, employment type, schedule, workplace type, and skills;
  • posted/expiry dates, listing state, application routing, sanitized description HTML/text, and source metadata;
  • request receipts, verification flags, retrieval metadata, and quality counters.

Recruiter contact values are never published. Any email address or phone number found in detail text is redacted, while contactRedacted and applicationContactRedacted preserve the fact that contact information was present.

Supported input modes

Input is defined in .actor/input_schema.json.

ModePurpose
searchSearch one query and location on the official OCC listing route.
searchMultipleRun a bounded set of queries for the same location.
singleFetch one exact official detail URL or numeric job ID.
multipleFetch several exact official detail URLs or numeric job IDs.
startUrlsProcess a bounded mixture of official listing and detail URLs.

Example search input:

{
"mode": "search",
"query": "desarrollador",
"location": "Ciudad de Mexico",
"maxPages": 2,
"maxItems": 3,
"maxCandidates": 40,
"maxRequests": 20,
"retries": 1
}

The Actor clamps page, item, candidate, request, response-size, timeout, and retry settings to safe bounds. Every request is subject to the request budget and a three-minute run deadline.

Output and run storage

Dataset rows follow .actor/dataset_schema.json. The schema requires identity, source, canonical/detail verification, complete description, posting dates, request receipts, and quality metadata. Empty values and placeholder strings are omitted.

The Actor also writes:

  • RUN_SUMMARY — mode, counts, request budget, duration, and status;
  • RUN_DIAGNOSTICS — structured HTTP, access, parse, budget, and deadline diagnostics;
  • RUN_METADATA — actor identity, official origin, supported modes, and normalized input;
  • RUN_HEALTH — compact local-run health state.

Local development

From this directory:

npm ci --ignore-scripts --no-audit --no-fund
npm run check
npm test
npm run validate
apify validate-schema .actor/input_schema.json
apify run --purge --input-file=INPUT.json

INPUT-single.json, INPUT-multiple.json, INPUT-search-multiple.json, INPUT-start-urls.json, and INPUT-negative.json exercise the other supported paths. The fixtures and tests verify parsing without depending on live OCC access.

Do not use apify push or apify call from this local audit workflow. Respect OCC Mundial's terms, robots directives, and applicable data-protection requirements; do not collect authenticated data or use this Actor to harvest personal contact information.

Cloud and local records expose a truthful localOnly provenance flag. Diagnostics remain KVS-only, and raw input is not persisted.