OCC Mundial Jobs Scraper avatar

OCC Mundial Jobs Scraper

Pricing

from $10.00 / 1,000 jobs

Go to Apify Store
OCC Mundial Jobs Scraper

OCC Mundial Jobs Scraper

Every job on OCC Mundial, Mexico's biggest job board, in one run: salary ranges in MXN, category, contract, work model, education, benefits, skills and full descriptions. Recruiters, HR teams and analysts get 1,000 jobs in under a minute.

Pricing

from $10.00 / 1,000 jobs

Rating

0.0

(0)

Developer

Norm Data

Norm Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 days ago

Last modified

Categories

Share

Norm Data

💼 OCC Mundial Jobs Scraper

Extract job listings from OCC Mundial, Mexico's biggest job board: title, company, salary (as shown and as numbers in MXN), city, state, category, contract, schedule, work model, education, benefits, skills, screening questions and the full description. Search by keyword, state or city, and filter by category, work model, contract, education, salary range and posting date. About 1,000 jobs with full details in under a minute.

OCC lists more than 55,000 open jobs. The site itself stops paging a search at about 10,000 results; this Actor splits bigger searches by category and state, so a run with no filters can return the whole board.

🎯 Who uses it?

🧑‍💼 Recruiters and staffing agencies

See who is hiring for a role, in which city and at what salary, and spot companies hiring many people at once.

💰 HR and compensation teams

Benchmark pay by job title, category, state and contract with real published salaries, already parsed into numbers with the pay period.

📈 Labor market analysts and journalists

Track demand by category, work model (remote, hybrid, on-site), education level and contract type across Mexico, on a schedule.

🛠️ Job board and HR tech builders

Feed an aggregator, alert service or matching model with fresh, structured Mexican jobs, including skills and benefits.

✨ What it does

  • Search by one or more keywords, in one or more states or cities, or across all of Mexico.
  • Every OCC filter as a real input: category (23), work model, contract type, education level, minimum and maximum salary, posting date, and sort order.
  • No result cap: searches over 10,000 jobs are split automatically, so nothing is cut off.
  • Full details on every row: full description, benefits, required skills, screening questions, schedule, education, posting and expiry dates.
  • Salary as numbers: "$15,000 - $18,000 Mensual" becomes salaryMin, salaryMax, salaryCurrency and salaryPeriod. Hidden salaries stay empty instead of guessed.
  • Paste a search link: reuse a search you already filtered on occ.com.mx.

🏆 Why this scraper

  • Fast without shortcuts. About 1,000 jobs with full details in under a minute (14 seconds in our tests), with no browser and no proxy.
  • Every filter, not just a keyword box. Category, work model, contract, education, salary and date are inputs you pick from a list.
  • The whole board when you need it. Big searches are split into pieces OCC can page through completely, newest first, with no duplicates.
  • Honest about what OCC shows. Confidential companies stay confidential (company is empty and confidentialCompany is true). Recruiter names, phones and emails are never collected.

⚖️ How it compares

CapabilityThis actorunfenced-groupcorvuslabgio21stilled_stalagmite
Several keywords and locations in one runyesnononono
Category filterseveralonenonono
Work model, education, salary filtersyesnononono
Contract filterseveralonenonono
Posting date filter and newest-first sortyesnononono
Past OCC's 10,000-job paging limityesnononono
Full descriptionyesoptionalyesyesyes
Skills and screening questionsyesnononono
Benefits listyesnononono
Salary min/max numbers and pay periodyesyespartialnono
Proxynone needednot statednot statednot statednot stated

corvuslab adds incremental mode and Telegram, Slack or Discord alerts, and corvuslab and unfenced-group can return the description as HTML or markdown. Here the description is clean plain text with bullet points kept.

📦 What data you get

FieldDescription
jobId, urlOCC's job ID and the job page.
title, company, confidentialCompany, verifiedCompanyJob title and hiring company; confidential listings have no company name. Verified means OCC checked the employer.
city, stateWhere the job is.
salary, salaryMin, salaryMax, salaryCurrency, salaryPeriodThe salary exactly as shown, the same as numbers in MXN, and the period (monthly, biweekly, weekly, daily, hourly, yearly). Empty when the company hides it.
category, subcategoryOCC's job category and subcategory.
employmentType, workSchedule, workModelContract (permanent, temporary...), schedule (full time, part time...) and onsite, hybrid or remote.
educationMinimum education asked for.
benefits, skills, screeningQuestionsLists of benefits, required skills and the questions applicants must answer.
descriptionFull job description as plain text.
companyLogo, companyJobsUrlCompany logo and the page with all its jobs.
postedAt, expiresAtPosting and expiry dates (YYYY-MM-DD).
scrapedAtWhen the row was collected (UTC).
errorOnly present when a job's details didn't load.

💡 Use cases

💰 Salary benchmark for sales roles in Jalisco

{ "maxItems": 1000, "keywords": ["vendedor"], "locations": ["Jalisco"], "minSalary": 10000 }

🏠 Remote IT jobs posted this week

{ "maxItems": 500, "categories": ["tecnologias-de-la-informacion-sistemas"], "workModels": ["remote"], "postedWithin": "7" }

🎓 Internships for students in Monterrey and CDMX

{ "maxItems": 300, "locations": ["Monterrey", "Ciudad de México"], "contractTypes": ["becario-practicas"] }

🗺️ The whole board, every job (leave Maximum jobs empty)

{ "keywords": [] }

🔗 Reuse a search you built on the site

{ "maxItems": 200, "pageUrl": "https://www.occ.com.mx/empleos/de-contador/en-nuevo-leon/?smin=20000" }

⚙️ How the input is organised

SectionWhat it's for
Maximum jobsAlways first, caps the whole run. Empty means no limit.
SearchKeywords, locations, or a pasted OCC search link.
Job filtersCategory, work model, contract type, education, minimum and maximum salary, posting date, sort order.

💰 Pricing

Pay-per-event: a one-time $0.003 when the run starts, plus a price per job saved to your dataset. The price depends on your Apify plan tier:

Your Apify planPrice per job
Free$0.014
Bronze$0.0125
Silver$0.011
Gold / Platinum / Diamond$0.01

Approximate total cost (includes the $0.003 start fee):

Jobs collectedFreeBronzeSilverGold+
100$1.40$1.25$1.10$1.00
1,000$14.00$12.50$11.00$10.00
10,000$140.00$125.00$110.00$100.00

New Apify accounts start with $5 in free credit. On the Free plan a run saves up to 10 jobs.

🚀 Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the OCC Mundial Jobs Scraper.
  3. Type a keyword (or keep the prefilled one), add locations or filters if you like, set Maximum jobs, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python, and schedule it with Apify's built-in Scheduler.

🤖 Use with AI agents (MCP)

Give an AI agent live access to OCC jobs through the Model Context Protocol:

claude mcp add --transport http apify "https://mcp.apify.com?tools=normdata/occ-scraper"

Then prompt it in plain language to run the scraper and read back the results.

🔧 Troubleshooting

A location was skipped. Use a state ("Jalisco", "Nuevo León") or a city ("Guadalajara", "Monterrey"). Accents are optional. If every location you gave is unrecognizable, the run stops with 0 results instead of searching all of Mexico.

Salary fields are empty. The company chose to hide the salary ("Si el reclutador te contacta podrás conocer el sueldo"). The salary filters still work on those jobs because OCC applies them on its side.

company is empty. The employer posted it as confidential (confidentialCompany is true).

A row has an error field. That job's details didn't load; the row keeps its ID, link and search info.

Fewer jobs than OCC's counter. A few jobs close between the search and the detail request; closed jobs are dropped instead of saved half empty.

❓ FAQ

QuestionAnswer
Do I need an OCC account?No. Only public job data is read.
Does it need a proxy?No.
Is there a limit on results?No. Searches bigger than OCC's 10,000-job paging limit are split, so you can collect the whole board.
Can I search several keywords and cities in one run?Yes. Each combination runs its own search, results are shared fairly and duplicates removed.
Are salaries numbers?Yes, salaryMin and salaryMax in MXN with salaryPeriod, plus the original text in salary.
Does it include recruiter contact details?No. Recruiter names, phones and emails are personal data and are left out on purpose.
Is the data live?Yes, read fresh on every run.
Can I schedule it?Yes, with Apify's built-in Scheduler, for example daily with Posted within set to Today.

🛡️ Limits & responsible use

This Actor reads only OCC's public job data. It never signs in and never applies to jobs. It does not collect recruiter personal data. Use the data in line with OCC's terms and applicable law (LFPDPPP).

📧 Contact

Need a scraper for a different site, or found something wrong with this one? norm.data.scrapers@gmail.com

🧪 Local development

bun install
bun run typecheck
bun test/qa.mjs
apify run

Local results are stored in storage/datasets/default.