# Computrabajo Scraper - LatAm Jobs, Salaries, Empleos & Vacantes (`scrapers_lat/computrabajo-scraper`) Actor

Scrape Computrabajo job postings across 19 LatAm countries (Mexico, Colombia, Peru, Argentina, Chile). Get title, company, salary, work mode, contract, requirements, education, full description, company logo and legal name. Empleos y vacantes. Export JSON, CSV, Excel. No login or API key.

- **URL**: https://apify.com/scrapers\_lat/computrabajo-scraper.md
- **Developed by:** [Scrapers Lat](https://apify.com/scrapers_lat) (community)
- **Categories:** Jobs, Business, Automation
- **Stats:** 2 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $11.35 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

[![Computrabajo Scraper - LatAm Jobs, Salaries, Empleos & Vacantes](https://scrapers.lat/banners/computrabajo-scraper.png)](https://console.apify.com/actors/n0eyOf3er4ksDVAca/input)

## Computrabajo Scraper: LatAm Jobs, Salaries, Empleos & Vacantes

The most complete **Computrabajo scraper** on Apify. Extract job postings, salaries, companies and full descriptions from **Computrabajo** across **19 Latin American countries** (Mexico, Colombia, Peru, Argentina, Chile, Ecuador, Venezuela and Central America). A fast HTTP scraper for recruiting data, salary benchmarking and job market research. **Empleos, ofertas de trabajo y vacantes** in one clean JSON, CSV or Excel export. No login and no API key.

Here is one real result, with every field the actor returns (the `description` and `companyProfile` text is trimmed with `...`; a live run returns the full text):

```json
{
  "title": "Analista Desarrollador Senior",
  "company": "RÉDITOS EMPRESARIALES S.A",
  "companyConfidential": false,
  "companyUrl": "https://co.computrabajo.com/reditosempresariales",
  "companyRating": 4.7,
  "companyWebsite": null,
  "companyLogo": "https://ii.ct-stc.com/1/logos/empresas/2024/10/09//reditosempresariales151548thumbnail.jpeg",
  "companyLegalName": "RÉDITOS EMPRESARIALES S.A",
  "companyProfile": "Somos un holding empresarial multisectorial moderno, innovador ...",
  "location": "Medellín, Antioquia",
  "city": "Medellín",
  "region": "Antioquia",
  "country": "COLOMBIA",
  "salary": "$ 6.865.000,00 (Mensual)",
  "salaryConfidential": false,
  "salaryDisclosed": true,
  "salaryValue": 6865000,
  "salaryMinValue": null,
  "salaryMaxValue": null,
  "salaryCurrency": "COP",
  "salaryUnit": "MONTH",
  "workMode": null,
  "modality": null,
  "isRemote": null,
  "isFeatured": true,
  "contractType": "Contrato a término indefinido",
  "employmentType": "Tiempo completo",
  "workingHours": "Tiempo Completo",
  "industry": "Entretenimiento / Deportes",
  "category": "Entretenimiento / Deportes",
  "experienceRequired": "3 años de experiencia",
  "educationRequired": "Universidad / Carrera Profesional",
  "ageRange": null,
  "languages": null,
  "skills": null,
  "benefits": null,
  "publishedDate": "Hace 27 minutos",
  "datePosted": "2026-09-04",
  "validThrough": "2026-11-03",
  "directApply": false,
  "description": "Empresa de tecnología ubicada en la ciudad de Medellín requiere ...",
  "requirements": "Educación mínima: Universidad / Carrera Profesional\n3 años de experiencia",
  "keywords": "analyst, developer, programador, senior, sr",
  "jobId": "01B60111FCE05A8061373E686DCF3405",
  "url": "https://co.computrabajo.com/ofertas-de-trabajo/oferta-de-trabajo-de-analista-desarrollador-senior-en-medellin-01B60111FCE05A8061373E686DCF3405",
  "applyUrl": "https://co.computrabajo.com/ofertas-de-trabajo/oferta-de-trabajo-de-analista-desarrollador-senior-en-medellin-01B60111FCE05A8061373E686DCF3405",
  "source": "computrabajo",
  "observedAt": "2026-09-04T22:10:00.222Z",
  "error": null
}
```

**📥 [Input](https://apify.com/scrapers_lat/computrabajo-scraper/input-schema) · 📤 [Output](https://apify.com/scrapers_lat/computrabajo-scraper/output-schema) · 💰 [Pricing](https://apify.com/scrapers_lat/computrabajo-scraper/pricing) · ▶️ [Examples](https://apify.com/scrapers_lat/computrabajo-scraper/examples)**

![Apify](https://img.shields.io/badge/Platform-Apify-1CE1CE?logo=apify\&logoColor=white)
![Coverage](https://img.shields.io/badge/Coverage-LatAm%20\(19%20countries\)-blue)
![Output](https://img.shields.io/badge/Output-JSON%20%7C%20CSV%20%7C%20Excel-orange)
![Billing](https://img.shields.io/badge/Billing-Pay%20per%20result-brightgreen)

### Table of contents

- [What it does](#what-it-does)
- [Why this scraper](#why-this-scraper)
- [Quickstart](#quickstart)
- [Input reference](#input-reference)
- [Output reference](#output-reference)
- [Comparison with other Computrabajo scrapers](#comparison-with-other-computrabajo-scrapers)
- [Run via API and CLI](#run-via-api-and-cli)
- [Fetch results](#fetch-results)
- [Billing and limits](#billing-and-limits)
- [FAQ and troubleshooting](#faq-and-troubleshooting)

### What it does

Give the actor a **Computrabajo** search URL, or a country code plus one or more search keywords. It paginates through the listings, and when `withDetails` is on, opens each job page to add the full description, requirements, structured salary, education, experience, company profile, company logo and company legal name. It writes one normalized record per job to the run's dataset, with parsed salary numbers, structured city/region/country, work mode and contract type. Missing source values are returned as `null`, never invented.

Use it for **recruiting and sourcing**, **salary benchmarking**, **job market and labor research**, lead lists of hiring companies, and feeding ATS or BI pipelines with fresh **LatAm jobs data**.

Data covers Computrabajo listings across **19 LatAm countries**: Mexico, Colombia, Peru, Argentina, Chile, Ecuador, Bolivia, Venezuela, Uruguay, Paraguay, Costa Rica, Panama, Guatemala, Honduras, El Salvador, Nicaragua, Dominican Republic, Puerto Rico and Spain. No login or API key is needed.

### Why this scraper

- **Full coverage.** Every field a Computrabajo listing exposes, including fields competitors drop: parsed salary numbers, company logo, company legal name, education, experience, working hours, category and a normalized remote/hybrid/onsite modality.
- **19 countries, one actor.** Any Computrabajo country domain works, or search by keyword plus a two letter country code.
- **Honest data.** HTTP only, public data only, missing values returned as `null`. No fabricated fields.
- **Drop in superset.** Accepts the inputs of every popular Computrabajo actor (`searchUrl`, `keyword`, `location`, `countryCode`, `startUrls`, `directUrls`, `maxItems`, and more) so you can switch without rewriting your input.
- **Pay per result.** Only pay for jobs you actually receive. Free runs and failed runs cost nothing.

### Quickstart

Open the actor, paste this into the input, and press Run. It returns 10 developer jobs in Colombia with detail pages.

```json
{
  "startUrl": "https://co.computrabajo.com/trabajo-de-desarrollador",
  "maxJobs": 10,
  "withDetails": true
}
```

Instead of `startUrl`, you can pass `country` plus `searchQueries` (or a single `keyword` plus `location`) to search by keyword.

### Input reference

| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| `startUrl` | string | no | (none) | A Computrabajo search or listing URL, for example `https://co.computrabajo.com/trabajo-de-desarrollador`. |
| `startUrls` | array | no | (none) | A list of Computrabajo search or listing URLs (also accepts `directUrls` and `searchUrls`). |
| `searchQueries` | array | no | (none) | Search keywords to use instead of (or in addition to) a URL. |
| `keyword` | string | no | (none) | A single search keyword. Same effect as one `searchQueries` entry. |
| `location` | string | no | (none) | City or place to narrow keyword searches, for example `medellin`. |
| `country` | string | no | `co` | Two letter Computrabajo country code for keyword searches (also accepts `countryCode`). |
| `maxJobs` | integer | no | (all) | Maximum job listings for the whole run (also accepts `maxItems` and `maxResults`). Free plans are capped at 10 per run. |
| `maxItemsPerSearch` | integer | no | (all) | Maximum jobs per keyword or URL (also accepts `maxResultsPerQuery`). |
| `withDetails` | boolean | no | `true` | Open each job page for description, requirements, salary numbers and company data (also accepts `scrapeDetails` and `includeJobDetails`). |

### Output reference

One dataset item per job. Types: `string`, `number`, `boolean`, `array`, or `null` when the source value is absent.

| Field | Type | Description |
|---|---|---|
| `title` | string | Job title. |
| `company` | string | Company name. |
| `companyConfidential` | boolean | Whether the employer is undisclosed or confidential. |
| `companyUrl` | string | Company profile URL on Computrabajo. |
| `companyRating` | number | Company star rating, or `null`. |
| `companyWebsite` | string | Company external website, or `null`. |
| `companyLogo` | string | Company logo image URL, or `null`. |
| `companyLegalName` | string | Company legal or registered name, or `null`. |
| `companyProfile` | string | Company profile text (with `withDetails`). |
| `location` | string | Full location string as shown. |
| `city` | string | City. |
| `region` | string | Region, state or department. |
| `country` | string | Country. |
| `salary` | string | Salary text as shown, or `null`. |
| `salaryConfidential` | boolean | Whether the salary is undisclosed. |
| `salaryDisclosed` | boolean | Whether a numeric salary value is present. |
| `salaryValue` | number | Single salary value when stated. |
| `salaryMinValue` | number | Minimum salary when a range is stated, or `null`. |
| `salaryMaxValue` | number | Maximum salary when a range is stated, or `null`. |
| `salaryCurrency` | string | Salary currency code, for example `COP`, `MXN`. |
| `salaryUnit` | string | Salary period, for example `MONTH`, `YEAR`, `HOUR`. |
| `workMode` | string | Work mode text as shown, for example `Presencial y remoto`. |
| `modality` | string | Normalized modality: `remote`, `hybrid` or `onsite`. |
| `isRemote` | boolean | Whether the role allows remote work. |
| `isFeatured` | boolean | Whether the listing is featured or highlighted. |
| `contractType` | string | Contract type, for example `Contrato a término indefinido`. |
| `employmentType` | string | Employment type, for example `Tiempo completo`. |
| `workingHours` | string | Working hours or jornada, for example `Tiempo Completo`. |
| `industry` | string | Company industry. |
| `category` | string | Job category or area. |
| `experienceRequired` | string | Experience required, or `null`. |
| `educationRequired` | string | Education level required, or `null`. |
| `ageRange` | string | Age requirement when stated, or `null`. |
| `languages` | string | Languages required when stated, or `null`. |
| `skills` | array | Skills or knowledge listed, or `null`. |
| `benefits` | array | Benefits listed as a discrete section, or `null`. |
| `publishedDate` | string | Relative posted text, for example `Hace 1 hora`. |
| `datePosted` | string | Normalized posted date (`YYYY-MM-DD`). |
| `validThrough` | string | Listing expiry date (`YYYY-MM-DD`). |
| `directApply` | boolean | Whether the listing supports direct apply. |
| `description` | string | Full job description (with `withDetails`). |
| `requirements` | string | Requirements block (with `withDetails`). |
| `keywords` | string | Matched keyword tags. |
| `jobId` | string | Computrabajo job ID. |
| `url` | string | Job listing URL. |
| `applyUrl` | string | Apply URL. |
| `source` | string | Source platform (`computrabajo`). |
| `observedAt` | string | ISO 8601 timestamp of when the record was collected. |
| `error` | string | `null` on success. On a failed run, a single item with a populated `error` field is written instead. |

### Comparison with other Computrabajo scrapers

All inputs of the popular Computrabajo actors are accepted here (as aliases), and every field they output is returned plus a large structured set on top.

| Capability | This actor | shahidirfan | santamaria-automations | powerai | memo23 |
|---|---|---|---|---|---|
| Search URL input | Yes | Yes | Yes | Yes | Yes |
| Multiple URLs / startUrls | Yes | No | Yes | No | Yes |
| Keyword + country input | Yes | Yes | Yes | No | Yes |
| Location input | Yes | Yes | No | No | No |
| 19 country coverage | Yes | Yes | Yes | Yes | Yes |
| Parsed salary min/max/value | Yes | Partial | Yes | No | Yes |
| Company logo | Yes | No | Yes | No | No |
| Company legal name | Yes | No | No | No | No |
| Company rating | Yes | No | Yes | No | No |
| Education + experience | Yes | Yes | Yes | No | Yes |
| Normalized modality | Yes | No | Partial | No | No |
| ISO posted + expiry dates | Yes | No | Yes | No | Yes |
| Pay per result | Yes | Yes | Yes | Yes | Yes |

Competitor references: `shahidirfan/Computrabajo-Jobs-Scraper`, `santamaria-automations/computrabajo-scraper`, `powerai/computrabajo-jobs-search-scraper`, `memo23/computrabajo-scraper`.

### Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace `<TOKEN>` with your Apify API token.

Run synchronously and get dataset items in one call:

```bash
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~computrabajo-scraper/run-sync-get-dataset-items?token=%3CTOKEN%3E" \
  -H "Content-Type: application/json" \
  -d '{"startUrl":"https://co.computrabajo.com/trabajo-de-desarrollador","maxJobs":25,"withDetails":true}'
```

Start a run asynchronously:

```bash
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~computrabajo-scraper/runs?token=%3CTOKEN%3E" \
  -H "Content-Type: application/json" \
  -d '{"country":"mx","searchQueries":["contador"],"maxJobs":100}'
```

Apify CLI:

```bash
apify call scrapers_lat/computrabajo-scraper \
  --input '{"startUrl":"https://co.computrabajo.com/trabajo-de-desarrollador","maxJobs":10}'
```

### Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing `format`:

```bash
## JSON
curl "https://api.apify.com/v2/datasets/%3CDATASET_ID%3E/items?token=%3CTOKEN%3E&clean=true&format=json"

## CSV
curl "https://api.apify.com/v2/datasets/%3CDATASET_ID%3E/items?token=%3CTOKEN%3E&clean=true&format=csv"

## Paginate large datasets
curl "https://api.apify.com/v2/datasets/%3CDATASET_ID%3E/items?token=%3CTOKEN%3E&offset=1000&limit=1000"
```

`<DATASET_ID>` is returned as `defaultDatasetId` in the run object. Use `offset` and `limit` to page through large result sets. `clean=true` drops empty and internal fields.

### Billing and limits

- **Pay per result.** You are charged per job returned (`result` event). When `withDetails` is on, a `details` event is charged only when a detail page actually returned enrichment. See the [pricing tab](https://apify.com/scrapers_lat/computrabajo-scraper/pricing) for current prices.
- **No charge on failure.** If a run errors, the actor writes a single item with a populated `error` field and does not charge for it. Empty runs cost nothing.
- **Spend cap respected.** Set `maxTotalChargeUsd` on the run; once reached, the actor stops fetching, emitting and charging further billable results.
- **Free Apify plans** are capped at 10 records per run. Upgrade for higher `maxJobs`.

### FAQ and troubleshooting

**A run returned 0 records. Why?**
The `startUrl` or search query matched no listings. Confirm the URL shows results in a browser, or broaden the query. Zero result runs are not charged.

**How do I search a different country?**
Use a country specific `startUrl` (for example `mx.computrabajo.com`), or pass `country` plus `searchQueries`.

**Why is `salary` null?**
Many Computrabajo listings do not state a salary. Missing source values are returned as `null`. When a salary is stated, `salaryValue` (and `salaryMinValue` / `salaryMaxValue` for ranges) give parsed numbers.

**Is this an official Computrabajo tool?**
No. This actor is independent and has no affiliation with Computrabajo. It reads only data that is publicly available on the site.

### Related scrapers

- [Bumeran Jobs Scraper](https://apify.com/scrapers_lat/bumeran-jobs-scraper): LatAm job listings from Bumeran.
- [ZonaJobs Argentina Scraper](https://apify.com/scrapers_lat/zonajobs-argentina-scraper): Argentina job listings from ZonaJobs.
- [OCC Mexico Jobs Scraper](https://apify.com/scrapers_lat/occ-mexico-jobs-scraper): Mexico job listings from OCC.
- [Elempleo Scraper](https://apify.com/scrapers_lat/elempleo-scraper): Colombia job listings from elempleo.
- [Catho Brasil Jobs Scraper](https://apify.com/scrapers_lat/catho-brasil-jobs-scraper): Brazil job listings from Catho.

### More scrapers at scrapers.lat

Built and maintained by [scrapers.lat](https://scrapers.lat), where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at [scrapers.lat](https://scrapers.lat).

***

## Computrabajo Scraper: Empleos, Salarios, Ofertas y Vacantes LatAm

El **scraper de Computrabajo** mas completo en Apify. Extrae ofertas de empleo, salarios, empresas y descripciones completas de **Computrabajo** en **19 paises de America Latina** (Mexico, Colombia, Peru, Argentina, Chile, Ecuador, Venezuela y Centroamerica). Un scraper HTTP rapido para datos de reclutamiento, comparacion de salarios e investigacion del mercado laboral. **Empleos, ofertas de trabajo y vacantes** en una exportacion limpia en JSON, CSV o Excel. Sin inicio de sesion y sin clave API.

Este es un resultado real, con todos los campos que devuelve el actor (el texto de `description` y `companyProfile` esta recortado con `...`; una ejecucion real devuelve el texto completo):

```json
{
  "title": "Analista Desarrollador Senior",
  "company": "RÉDITOS EMPRESARIALES S.A",
  "companyConfidential": false,
  "companyUrl": "https://co.computrabajo.com/reditosempresariales",
  "companyRating": 4.7,
  "companyWebsite": null,
  "companyLogo": "https://ii.ct-stc.com/1/logos/empresas/2024/10/09//reditosempresariales151548thumbnail.jpeg",
  "companyLegalName": "RÉDITOS EMPRESARIALES S.A",
  "companyProfile": "Somos un holding empresarial multisectorial moderno, innovador ...",
  "location": "Medellín, Antioquia",
  "city": "Medellín",
  "region": "Antioquia",
  "country": "COLOMBIA",
  "salary": "$ 6.865.000,00 (Mensual)",
  "salaryConfidential": false,
  "salaryDisclosed": true,
  "salaryValue": 6865000,
  "salaryMinValue": null,
  "salaryMaxValue": null,
  "salaryCurrency": "COP",
  "salaryUnit": "MONTH",
  "workMode": null,
  "modality": null,
  "isRemote": null,
  "isFeatured": true,
  "contractType": "Contrato a término indefinido",
  "employmentType": "Tiempo completo",
  "workingHours": "Tiempo Completo",
  "industry": "Entretenimiento / Deportes",
  "category": "Entretenimiento / Deportes",
  "experienceRequired": "3 años de experiencia",
  "educationRequired": "Universidad / Carrera Profesional",
  "ageRange": null,
  "languages": null,
  "skills": null,
  "benefits": null,
  "publishedDate": "Hace 27 minutos",
  "datePosted": "2026-09-04",
  "validThrough": "2026-11-03",
  "directApply": false,
  "description": "Empresa de tecnología ubicada en la ciudad de Medellín requiere ...",
  "requirements": "Educación mínima: Universidad / Carrera Profesional\n3 años de experiencia",
  "keywords": "analyst, developer, programador, senior, sr",
  "jobId": "01B60111FCE05A8061373E686DCF3405",
  "url": "https://co.computrabajo.com/ofertas-de-trabajo/oferta-de-trabajo-de-analista-desarrollador-senior-en-medellin-01B60111FCE05A8061373E686DCF3405",
  "applyUrl": "https://co.computrabajo.com/ofertas-de-trabajo/oferta-de-trabajo-de-analista-desarrollador-senior-en-medellin-01B60111FCE05A8061373E686DCF3405",
  "source": "computrabajo",
  "observedAt": "2026-09-04T22:10:00.222Z",
  "error": null
}
```

**📥 [Entrada](https://apify.com/scrapers_lat/computrabajo-scraper/input-schema) · 📤 [Salida](https://apify.com/scrapers_lat/computrabajo-scraper/output-schema) · 💰 [Precios](https://apify.com/scrapers_lat/computrabajo-scraper/pricing) · ▶️ [Ejemplos](https://apify.com/scrapers_lat/computrabajo-scraper/examples)**

### Indice

- [Que hace](#que-hace)
- [Por que este scraper](#por-que-este-scraper)
- [Inicio rapido](#inicio-rapido)
- [Referencia de entrada](#referencia-de-entrada)
- [Referencia de salida](#referencia-de-salida)
- [Comparacion con otros scrapers de Computrabajo](#comparacion-con-otros-scrapers-de-computrabajo)
- [Ejecutar por API y CLI](#ejecutar-por-api-y-cli)
- [Obtener resultados](#obtener-resultados)
- [Facturacion y limites](#facturacion-y-limites)
- [Preguntas frecuentes](#preguntas-frecuentes)

### Que hace

Dale al actor una URL de busqueda de **Computrabajo**, o un codigo de pais mas una o varias palabras clave. Pagina las publicaciones y, cuando `withDetails` esta activo, abre cada oferta para agregar la descripcion completa, los requisitos, el salario estructurado, la educacion, la experiencia, el perfil de la empresa, el logo y la razon social. Escribe un registro normalizado por empleo en el dataset de la ejecucion, con numeros de salario ya parseados, ciudad, region y pais estructurados, modalidad de trabajo y tipo de contrato. Los valores ausentes en la fuente se devuelven como `null`, nunca inventados.

Usalo para **reclutamiento y sourcing**, **comparacion de salarios**, **investigacion del mercado laboral**, listas de empresas que contratan y para alimentar pipelines de ATS o BI con **datos de empleos de LatAm** frescos.

Los datos cubren publicaciones de Computrabajo en **19 paises de LatAm**: Mexico, Colombia, Peru, Argentina, Chile, Ecuador, Bolivia, Venezuela, Uruguay, Paraguay, Costa Rica, Panama, Guatemala, Honduras, El Salvador, Nicaragua, Republica Dominicana, Puerto Rico y Espana. No se necesita inicio de sesion ni clave API.

### Por que este scraper

- **Cobertura total.** Todos los campos que expone una oferta de Computrabajo, incluidos los que otros omiten: numeros de salario parseados, logo de la empresa, razon social, educacion, experiencia, jornada, categoria y una modalidad normalizada remoto/hibrido/presencial.
- **19 paises, un actor.** Funciona con cualquier dominio de pais de Computrabajo, o busca por palabra clave mas un codigo de pais de dos letras.
- **Datos honestos.** Solo HTTP, solo datos publicos, valores ausentes devueltos como `null`. Sin campos inventados.
- **Superconjunto directo.** Acepta las entradas de todos los actores populares de Computrabajo (`searchUrl`, `keyword`, `location`, `countryCode`, `startUrls`, `directUrls`, `maxItems` y mas) para que cambies sin reescribir tu entrada.
- **Pago por resultado.** Solo pagas por los empleos que recibes. Las ejecuciones vacias y las fallidas no cuestan nada.

### Inicio rapido

Abre el actor, pega esto en la entrada y presiona Run. Devuelve 10 empleos de desarrollador en Colombia con paginas de detalle.

```json
{
  "startUrl": "https://co.computrabajo.com/trabajo-de-desarrollador",
  "maxJobs": 10,
  "withDetails": true
}
```

En lugar de `startUrl`, puedes pasar `country` mas `searchQueries` (o un solo `keyword` mas `location`) para buscar por palabra clave.

### Referencia de entrada

| Campo | Tipo | Requerido | Predeterminado | Descripcion |
|---|---|---|---|---|
| `startUrl` | string | no | (ninguno) | Una URL de busqueda o listado de Computrabajo, por ejemplo `https://co.computrabajo.com/trabajo-de-desarrollador`. |
| `startUrls` | array | no | (ninguno) | Una lista de URLs de busqueda o listado (tambien acepta `directUrls` y `searchUrls`). |
| `searchQueries` | array | no | (ninguno) | Palabras clave para usar en lugar de (o ademas de) una URL. |
| `keyword` | string | no | (ninguno) | Una sola palabra clave. Mismo efecto que una entrada de `searchQueries`. |
| `location` | string | no | (ninguno) | Ciudad o lugar para acotar las busquedas por palabra clave, por ejemplo `medellin`. |
| `country` | string | no | `co` | Codigo de pais de dos letras de Computrabajo para busquedas por palabra clave (tambien acepta `countryCode`). |
| `maxJobs` | integer | no | (todos) | Maximo de empleos para toda la ejecucion (tambien acepta `maxItems` y `maxResults`). Los planes gratuitos se limitan a 10 por ejecucion. |
| `maxItemsPerSearch` | integer | no | (todos) | Maximo de empleos por palabra clave o URL (tambien acepta `maxResultsPerQuery`). |
| `withDetails` | boolean | no | `true` | Abre cada oferta para descripcion, requisitos, numeros de salario y datos de empresa (tambien acepta `scrapeDetails` e `includeJobDetails`). |

### Referencia de salida

Un elemento del dataset por empleo. Tipos: `string`, `number`, `boolean`, `array`, o `null` cuando el valor de la fuente esta ausente.

| Campo | Tipo | Descripcion |
|---|---|---|
| `title` | string | Titulo del empleo. |
| `company` | string | Nombre de la empresa. |
| `companyConfidential` | boolean | Si la empresa esta oculta o es confidencial. |
| `companyUrl` | string | URL del perfil de la empresa en Computrabajo. |
| `companyRating` | number | Calificacion de la empresa, o `null`. |
| `companyWebsite` | string | Sitio web externo de la empresa, o `null`. |
| `companyLogo` | string | URL del logo de la empresa, o `null`. |
| `companyLegalName` | string | Razon social de la empresa, o `null`. |
| `companyProfile` | string | Texto del perfil de la empresa (con `withDetails`). |
| `location` | string | Ubicacion completa tal como se muestra. |
| `city` | string | Ciudad. |
| `region` | string | Region, estado o departamento. |
| `country` | string | Pais. |
| `salary` | string | Texto de salario tal como se muestra, o `null`. |
| `salaryConfidential` | boolean | Si el salario esta oculto. |
| `salaryDisclosed` | boolean | Si hay un valor numerico de salario. |
| `salaryValue` | number | Valor unico de salario cuando se indica. |
| `salaryMinValue` | number | Salario minimo cuando hay un rango, o `null`. |
| `salaryMaxValue` | number | Salario maximo cuando hay un rango, o `null`. |
| `salaryCurrency` | string | Codigo de moneda del salario, por ejemplo `COP`, `MXN`. |
| `salaryUnit` | string | Periodo del salario, por ejemplo `MONTH`, `YEAR`, `HOUR`. |
| `workMode` | string | Modalidad de trabajo tal como se muestra, por ejemplo `Presencial y remoto`. |
| `modality` | string | Modalidad normalizada: `remote`, `hybrid` u `onsite`. |
| `isRemote` | boolean | Si el rol permite trabajo remoto. |
| `isFeatured` | boolean | Si la oferta esta destacada. |
| `contractType` | string | Tipo de contrato, por ejemplo `Contrato a término indefinido`. |
| `employmentType` | string | Tipo de empleo, por ejemplo `Tiempo completo`. |
| `workingHours` | string | Jornada, por ejemplo `Tiempo Completo`. |
| `industry` | string | Industria de la empresa. |
| `category` | string | Categoria o area del empleo. |
| `experienceRequired` | string | Experiencia requerida, o `null`. |
| `educationRequired` | string | Nivel de educacion requerido, o `null`. |
| `ageRange` | string | Requisito de edad cuando se indica, o `null`. |
| `languages` | string | Idiomas requeridos cuando se indican, o `null`. |
| `skills` | array | Habilidades o conocimientos listados, o `null`. |
| `benefits` | array | Beneficios listados como seccion aparte, o `null`. |
| `publishedDate` | string | Texto relativo de publicacion, por ejemplo `Hace 1 hora`. |
| `datePosted` | string | Fecha de publicacion normalizada (`YYYY-MM-DD`). |
| `validThrough` | string | Fecha de vencimiento de la oferta (`YYYY-MM-DD`). |
| `directApply` | boolean | Si la oferta permite postulacion directa. |
| `description` | string | Descripcion completa del empleo (con `withDetails`). |
| `requirements` | string | Bloque de requisitos (con `withDetails`). |
| `keywords` | string | Etiquetas de palabras clave coincidentes. |
| `jobId` | string | ID del empleo en Computrabajo. |
| `url` | string | URL de la oferta. |
| `applyUrl` | string | URL para postularse. |
| `source` | string | Plataforma de origen (`computrabajo`). |
| `observedAt` | string | Marca de tiempo ISO 8601 de cuando se recopilo el registro. |
| `error` | string | `null` en exito. En una ejecucion fallida se escribe un solo elemento con el campo `error`. |

### Comparacion con otros scrapers de Computrabajo

Aqui se aceptan todas las entradas de los actores populares de Computrabajo (como alias) y se devuelven todos sus campos mas un amplio conjunto estructurado adicional.

| Capacidad | Este actor | shahidirfan | santamaria-automations | powerai | memo23 |
|---|---|---|---|---|---|
| Entrada por URL de busqueda | Si | Si | Si | Si | Si |
| Multiples URLs / startUrls | Si | No | Si | No | Si |
| Entrada palabra clave + pais | Si | Si | Si | No | Si |
| Entrada de ubicacion | Si | Si | No | No | No |
| Cobertura de 19 paises | Si | Si | Si | Si | Si |
| Salario parseado min/max/valor | Si | Parcial | Si | No | Si |
| Logo de la empresa | Si | No | Si | No | No |
| Razon social | Si | No | No | No | No |
| Calificacion de empresa | Si | No | Si | No | No |
| Educacion + experiencia | Si | Si | Si | No | Si |
| Modalidad normalizada | Si | No | Parcial | No | No |
| Fechas ISO de publicacion y vencimiento | Si | No | Si | No | Si |
| Pago por resultado | Si | Si | Si | Si | Si |

Referencias de competidores: `shahidirfan/Computrabajo-Jobs-Scraper`, `santamaria-automations/computrabajo-scraper`, `powerai/computrabajo-jobs-search-scraper`, `memo23/computrabajo-scraper`.

### Ejecutar por API y CLI

Inicia una ejecucion y espera a que termine, luego lee el dataset. Reemplaza `<TOKEN>` con tu token de API de Apify.

Ejecutar de forma sincrona y obtener los items del dataset en una sola llamada:

```bash
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~computrabajo-scraper/run-sync-get-dataset-items?token=%3CTOKEN%3E" \
  -H "Content-Type: application/json" \
  -d '{"startUrl":"https://co.computrabajo.com/trabajo-de-desarrollador","maxJobs":25,"withDetails":true}'
```

Iniciar una ejecucion de forma asincrona:

```bash
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~computrabajo-scraper/runs?token=%3CTOKEN%3E" \
  -H "Content-Type: application/json" \
  -d '{"country":"mx","searchQueries":["contador"],"maxJobs":100}'
```

Apify CLI:

```bash
apify call scrapers_lat/computrabajo-scraper \
  --input '{"startUrl":"https://co.computrabajo.com/trabajo-de-desarrollador","maxJobs":10}'
```

### Obtener resultados

Cada ejecucion escribe en un dataset. Obten los items como JSON, CSV o Excel cambiando `format`:

```bash
## JSON
curl "https://api.apify.com/v2/datasets/%3CDATASET_ID%3E/items?token=%3CTOKEN%3E&clean=true&format=json"

## CSV
curl "https://api.apify.com/v2/datasets/%3CDATASET_ID%3E/items?token=%3CTOKEN%3E&clean=true&format=csv"

## Paginar datasets grandes
curl "https://api.apify.com/v2/datasets/%3CDATASET_ID%3E/items?token=%3CTOKEN%3E&offset=1000&limit=1000"
```

`<DATASET_ID>` se devuelve como `defaultDatasetId` en el objeto de la ejecucion. Usa `offset` y `limit` para paginar. `clean=true` elimina campos vacios e internos.

### Facturacion y limites

- **Pago por resultado.** Se cobra por empleo devuelto (evento `result`). Cuando `withDetails` esta activo, se cobra un evento `details` solo cuando la pagina de detalle devolvio informacion. Consulta la [pestana de precios](https://apify.com/scrapers_lat/computrabajo-scraper/pricing).
- **Sin cargo por fallo.** Si una ejecucion falla, el actor escribe un solo elemento con el campo `error` y no cobra por el. Las ejecuciones vacias no cuestan nada.
- **Limite de gasto respetado.** Configura `maxTotalChargeUsd`; al alcanzarlo, el actor deja de descargar, emitir y cobrar mas resultados.
- **Los planes gratuitos** se limitan a 10 registros por ejecucion. Mejora tu plan para un `maxJobs` mayor.

### Preguntas frecuentes

**Una ejecucion devolvio 0 registros. Por que?**
La `startUrl` o la busqueda no coincidio con ninguna oferta. Confirma que la URL muestra resultados en un navegador, o amplia la busqueda. Las ejecuciones sin resultados no se cobran.

**Como busco en otro pais?**
Usa una `startUrl` especifica del pais (por ejemplo `mx.computrabajo.com`), o pasa `country` mas `searchQueries`.

**Por que `salary` es null?**
Muchas ofertas de Computrabajo no indican salario. Los valores ausentes se devuelven como `null`. Cuando se indica un salario, `salaryValue` (y `salaryMinValue` / `salaryMaxValue` para rangos) dan numeros parseados.

**Es una herramienta oficial de Computrabajo?**
No. Este actor es independiente y no tiene afiliacion con Computrabajo. Solo lee datos disponibles publicamente en el sitio.

### Mas scrapers en scrapers.lat

Creado y mantenido por [scrapers.lat](https://scrapers.lat), donde publicamos scrapers para plataformas publicas de EE. UU. y America Latina: registros de empresas, datos gubernamentales, finanzas, comercio electronico y mas. Explora el catalogo o solicita un scraper personalizado en [scrapers.lat](https://scrapers.lat).

***

> Herramienta independiente, sin afiliacion con Computrabajo. Accede solo a datos de ofertas de empleo disponibles publicamente.

# Actor input Schema

## `startUrl` (type: `string`):

A Computrabajo search or listing URL to scrape, for example https://co.computrabajo.com/trabajo-de-desarrollador. Apply any filters on the site first and paste the resulting URL. Works on every country domain (co, mx, ar, cl, pe, etc.). Pagination is followed automatically.

## `startUrls` (type: `array`):

Optional. One or more Computrabajo search or listing URLs. Use this to scrape several searches or countries in a single run. Each URL is paginated automatically.

## `searchQueries` (type: `array`):

Optional. Instead of (or in addition to) a Search URL, provide keywords like 'ventas', 'chofer', 'desarrollador'. Each keyword is searched and paginated automatically. Combine with the Country field to pick the market.

## `keyword` (type: `string`):

Optional. A single search keyword, for example 'contador'. Equivalent to adding one entry to Search keywords.

## `location` (type: `string`):

Optional. City or place to narrow keyword searches, for example 'medellin', 'bogota', 'lima'. Applied to keyword searches only.

## `country` (type: `string`):

Optional. Two-letter Computrabajo country code used when searching by keyword: co, mx, ar, cl, pe, ec, bo, cr, sv, gt, hn, ni, pa, py, do, uy, ve, pr, es. Defaults to co. Ignored when a Search URL is provided.

## `maxJobs` (type: `integer`):

Maximum number of job listings to collect across the whole run. Optional. Free Apify plans are capped at 10 per run.

## `maxItemsPerSearch` (type: `integer`):

Optional. Maximum number of job listings to collect per keyword or per Search URL. Leave empty for no per-search cap.

## `withDetails` (type: `boolean`):

When enabled, the actor opens each job page to add the full description, requirements, contract type, structured salary, education/experience, company profile, logo and legal name. This is slower and makes one request per job.

## Actor input object example

```json
{
  "startUrl": "https://co.computrabajo.com/trabajo-de-desarrollador",
  "startUrls": [],
  "searchQueries": [],
  "maxJobs": 10,
  "withDetails": true
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrl": "https://co.computrabajo.com/trabajo-de-desarrollador",
    "startUrls": [],
    "searchQueries": [],
    "maxJobs": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapers_lat/computrabajo-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrl": "https://co.computrabajo.com/trabajo-de-desarrollador",
    "startUrls": [],
    "searchQueries": [],
    "maxJobs": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("scrapers_lat/computrabajo-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrl": "https://co.computrabajo.com/trabajo-de-desarrollador",
  "startUrls": [],
  "searchQueries": [],
  "maxJobs": 10
}' |
apify call scrapers_lat/computrabajo-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,scrapers_lat/computrabajo-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/n0eyOf3er4ksDVAca/builds/9ea1gY4wKUhtS8Pvf/openapi.json
