Tecnoempleo Scraper — 2,400+ Spain IT Jobs, Salaries & Empleo
Pricing
from $1.20 / 1,000 job results
Tecnoempleo Scraper — 2,400+ Spain IT Jobs, Salaries & Empleo
Scrape Tecnoempleo.com's full live catalogue — 2,400+ Spanish IT & developer jobs (empleo), far beyond the ~80-item cap of its RSS feed. Get title, company, province, EUR salary, tech stack, date & apply URL. Filter by province, work modality, category & keyword; delta mode for daily alerts.
Tecnoempleo Scraper — 2,400+ Spain IT & Tech Jobs
Scrape current IT and developer vacancies from Tecnoempleo.com, Spain's dedicated tech job board.
Tecnoempleo is one of Spain's largest specialist IT job boards, carrying developer, DevOps, data, QA and technical-management roles from Spanish employers and consultancies. This Actor crawls its live listing pages — thousands of vacancies, far beyond the ~80-item cap of the site's RSS feed — into clean, deduplicated JSON, so you can filter Spanish tech empleo by province, work modality, category and keyword and pipe it straight into your own tools. No login, no proxies.
If the HTML listing is ever unreachable, the Actor automatically falls back to the site's RSS feed instead of failing, so a run always returns the most recent postings it can.
What Tecnoempleo data does this scraper extract?
Each result is one flat JSON record per job posting:
| Field | Meaning |
|---|---|
title | Job title as posted |
company | Hiring company / organisation |
location | Location or work-mode label (e.g. Madrid, 100% remoto, Híbrido) |
category | Professional function / role category (e.g. Analista, Programador) |
technologies | Technology / skill tags on the posting (e.g. ["Java","AWS"]) |
url | Direct link to the posting |
postedAt | Posting date (DD/MM/YYYY; ISO when includeDescription is on) |
snippet | Short description excerpt |
description | Full description — only when includeDescription is enabled |
salaryMin / salaryMax / salaryCurrency / salaryPeriod | Structured salary in EUR — only when includeDescription is enabled and the employer discloses it (never guessed) |
id | Stable source-side identifier |
How to scrape Tecnoempleo with this Actor
- Click Try for free / Run — no login to the target site, no cookies, no proxies to configure.
- Adjust the input (keyword, filters,
maxItems) or keep the defaults. - Run it and export the dataset as JSON, CSV or Excel, or read it over the API.
Run it from your own code:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("nomad-agent/tecnoempleo-scraper").call(run_input={"maxItems": 50})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["title"], "—", item["company"], item["url"])
Or a single HTTP call that runs the Actor and returns items in one response:
curl -X POST \"https://api.apify.com/v2/acts/nomad-agent~tecnoempleo-scraper/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"maxItems": 50}'
Input
| Field | Type | Default | Notes |
|---|---|---|---|
keyword | string | (empty) | Sent to Tecnoempleo's own search (narrows the crawl) and applied client-side against title, company, snippet and technologies. Leave empty to return everything. |
province | string | (empty) | Spanish province name (e.g. Madrid, Barcelona, Malaga). Accent/case-insensitive, resolved live against the site's province list. Unrecognised names are ignored. |
remote | string | any | Work modality: remote (100%), hybrid, on-site, or any. |
category | string | (empty) | Professional-function / category name (e.g. Programador, Analista, DevOps). Accent/case-insensitive, resolved live. Unrecognised names are ignored. |
includeDescription | boolean | false | Fetch each posting's detail page to fill the full description and structured salary (EUR). One extra request per returned posting. |
titleExclude | array | [] | Drop listings whose title contains any of these case-insensitive terms. |
companyExclude | array | [] | Drop listings whose company contains any of these case-insensitive terms. |
postedSince | integer | 0 | Drop listings older than N days, from the posting date. Listings with no parseable date are always kept. Set 0 to disable. |
onlyNewSinceLastRun | boolean | false | Delta mode: emit only postings not seen on previous runs (state persists across runs). Great for scheduled daily alerts. |
maxItems | integer | 80 | Maximum postings to return. HTML pagination goes well beyond the RSS feed's ~80-item cap. Set 0 for no limit. |
cacheTtlSeconds | integer | 1800 | (Advanced) Reuses fetched listing/detail pages for this many seconds so rapid re-runs don't hit Tecnoempleo again. Set 0 to always fetch live. |
Output example
{"id": "rf-118842abc123def4567890abcdef1234","title": "Programador/a Python","company": "Sopra Steria","location": "Valencia","category": "Programador","technologies": ["Python", "AWS", "Django"],"url": "https://www.tecnoempleo.com/programador-python-valencia/python-aws/rf-118842abc123def4567890abcdef1234","postedAt": "2026-06-30","snippet": "Se busca programador/a Python con experiencia...","description": "Se busca programador/a Python... (full text, only with includeDescription)","salaryMin": 30000,"salaryMax": 42000,"salaryCurrency": "EUR","salaryPeriod": "year","source": "tecnoempleo"}
Integrations
Export results as JSON, CSV or Excel; connect via Make, Zapier or n8n; call directly with run-sync-get-dataset-items; or plug into AI agents through the Apify MCP server.
Pricing
Pay per event: $0.005 per Actor start and $1.50 per 1,000 job results ($0.0015 each), dropping to $1.20 / 1,000 on higher Apify plans.
| Jobs returned | You pay |
|---|---|
| 100 | ≈ $0.16 |
| 1,000 | ≈ $1.51 |
| 2,400 (the full live catalogue) | ≈ $3.61 |
A run that finds nothing pushes a single free diagnostic row explaining why — you are never billed for results you did not get. No subscription, no rental.
Use cases
- Spanish tech-job boards and alert bots
- Sourcing developers in Spain
- Tracking which companies are actively hiring IT talent in Spain
- Filtering the live feed for specific tech keywords via the
keywordinput
FAQ
Is it legal to scrape Tecnoempleo? This Actor reads only publicly available job postings — data any visitor can see without logging in. No personal data behind authentication is touched. Review the target site's terms and your local regulations for your specific use case.
Do I need an account on the target site? No. Postings are fetched from public pages/APIs — no login, cookies or session tokens.
How fresh is the data?
Every run fetches live listings. Results are cached for cacheTtlSeconds (default 30 min, set 0 to always hit the source live).
How many jobs can I get?
maxItems caps the run (set 0 where supported for no cap). Most sources paginate from newest to oldest.
Which roles does Tecnoempleo cover? Primarily IT and engineering — backend/frontend developers, DevOps, data, QA, IT support and technical management — mostly across Spain, with a growing share of remote-friendly listings.
Can I get only remote jobs?
Set remote to remote (100% en remoto), hybrid or on-site. You can also filter by province and category, or post-process the location field.
Can I get salaries and full descriptions?
Enable includeDescription. The Actor then reads each posting's structured JobPosting data to fill the full description and salaryMin/salaryMax/salaryCurrency/salaryPeriod in EUR (only when the employer discloses a salary — it is never guessed).
How do I track only new jobs?
Enable onlyNewSinceLastRun and schedule the Actor. It remembers listing ids across runs and returns only postings it hasn't seen before.
Something broken or missing? Open an issue on the Actor's Issues tab — it is monitored and reliability fixes ship fast.
Getting fewer results than you expected?
The Actor tells you why: a run that matches nothing pushes one free diagnostic row instead of an empty dataset. Relax keyword, province, category, remote or postedSince, and remember that onlyNewSinceLastRun returns only postings it has not seen on an earlier run — the second run of an unchanged feed is empty by design.
Found it useful?
Leave a rating on the Reviews tab — it takes ten seconds, and it is the single biggest thing that helps other people in Spain's tech-hiring niche find this Actor.
Related Actors
- Web Developer Jobs Scraper — 10 Boards in One
- InfoJobs Scraper — Ofertas de Trabajo y Empleo España — AI skill tags, structured salary, delta mode
- JustJoin.it Jobs Scraper — Polish Tech & IT Jobs
From the maker of Oink — an open-source, AI-powered job-search bot for Telegram that runs on these Actors. Try the free bot, get a managed instance at oinkjobsearch.com, or browse the full catalog of 50+ Actors.