Profesia.sk Jobs Scraper
Pricing
from $1.30 / 1,000 results
Profesia.sk Jobs Scraper
[💰 $1.30 / 1K] Extract job listings from Profesia.sk, Slovakia's largest job board. Search by keyword or URL, filter by region, employment type, salary, remote work and date, and get full descriptions, salary and company details.
Pricing
from $1.30 / 1,000 results
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share
Pull job listings from Profesia.sk — Slovakia's largest job board — at scale, with structured salaries, full descriptions, company profiles, and recruiter contact details on the offers that publish them. Search by keyword, paste URLs, and filter by region, employment type, remote work, salary, and posting date. Built for Slovak and CEE recruiters, HR-tech teams, labor-market analysts, and job-aggregator builders who need clean, structured Profesia.sk data without copy-pasting offers one page at a time.
Why This Scraper?
- Every Slovak region in one filter — narrow results to any of the 8 official regions (Bratislava, Trnava, Trenčín, Nitra, Žilina, Banská Bystrica, Prešov, Košice), plus an Abroad option for jobs located outside Slovakia.
- Five employment types, natively filtered — full-time (plný úväzok), part-time (skrátený úväzok), self-employment / trade licence (živnosť), agreement / gig work (dohoda, brigáda), and internship (stáž).
- On-site, remote, and hybrid split apart — a dedicated work-location filter isolates fully-remote (práca z domu) roles from hybrid and on-site ones, and with full job details enabled each job also carries a normalized
remoteTypelabel. - Structured salary, not just a text blob — each disclosed salary is parsed into
salaryMin,salaryMax,salaryCurrency, andsalaryPeriod, alongside the original display text. Filter by a monthly or hourly floor in euros. - Full descriptions in clean text and original HTML — return plain text, formatting-preserving HTML, or both in their own fields, so you can index the words and re-render the layout.
- A full company profile with each job — with full job details enabled, the employer's Profesia company page, employee-size range, and company description attach to the listing, not just the employer name.
- Recruiter contact details when published — with full job details enabled, offers that name a contact expose the contact person and phone plus a direct apply link, ready for outreach.
- Posting-date windows down to 24 hours — collect only jobs published in the last 24 hours, 2 days, 7 days, or 30 days for daily monitoring.
- Up to 5,000 jobs per keyword, auto-deduplicated — run up to 50 keywords in a single job; duplicates are removed run-wide by job ID.
Use Cases
Recruitment & Talent Sourcing
- Build candidate-facing job boards that mirror Profesia.sk inventory
- Track competitor hiring by company across all 8 regions
- Monitor new postings in your sector every 24 hours
- Assemble recruiter and employer contact lists for outreach
Labor Market Research
- Measure salary ranges by role, region, and employment type
- Track demand for specific skills (Java, účtovník, vodič) over time
- Compare full-time versus agreement/gig hiring volumes
- Analyze the share of remote, hybrid, and on-site roles
Job Aggregators & Data Products
- Feed a Slovak or wider CEE job aggregator with structured listings
- Enrich existing job databases with salary and company metadata
- Power salary-benchmarking and compensation tools
- Ingest deduplicated feeds keyed on a stable job ID
HR-Tech & Analytics
- Benchmark your own openings against live market salaries
- Build dashboards of hiring trends by region and category
- Alert on new roles matching a saved keyword-and-filter set
- Export straight into spreadsheets and BI tools
Getting Started
Quick Keyword Search
The simplest way to start — one keyword and a small result cap:
{"searchQueries": ["účtovník"],"maxResults": 50}
Filtered Search
Combine filters to zero in on exactly the roles you want:
{"searchQueries": ["Java developer"],"region": "bratislava","employmentType": ["full-time"],"remoteWork": "remote","salaryMin": 2000,"salaryPeriod": "monthly","maxResults": 200}
Advanced — Keywords, URLs, and Full Detail
{"searchQueries": ["manažér", "vodič"],"startUrls": [{ "url": "https://www.profesia.sk/praca/kosice/" }],"datePosted": "7","maxResults": 1000,"includeJobDetails": true,"descriptionFormat": "both"}
Input Reference
Search
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQueries | array | ["účtovník"] | Job titles or keywords such as "účtovník", "vodič", or "Java developer". Each keyword runs its own search; results are merged and de-duplicated. Up to 50 keywords per run. |
startUrls | array | [] | Paste full Profesia.sk URLs directly — filtered search pages, region or category pages, or individual job offers. Any filters baked into a search URL are honored as-is, and paging is automatic. Up to 100 URLs per run. |
Filters
| Parameter | Type | Default | Description |
|---|---|---|---|
region | string | Any region | Limit results to one Slovak region. Use "Abroad" for jobs located outside Slovakia. |
employmentType | array | [] | Only collect these employment types: full-time, part-time, self-employment, agreement, or internship. Leave empty to include every type. |
remoteWork | string | Any | Filter by where the work is done: on-site, fully remote, or hybrid. |
salaryMin | integer | null | Only collect jobs offering at least this salary in euros. Jobs that do not publish a salary are excluded when this is set. |
salaryPeriod | string | Per month | Whether the Minimum Salary above is a monthly or an hourly amount. |
datePosted | string | Any time | Only show jobs published within this window: last 24 hours, 2 days, 7 days, or 30 days. |
Output Options
| Parameter | Type | Default | Description |
|---|---|---|---|
maxResults | integer | 100 | Maximum jobs to collect per search keyword. Capped at 5,000 per search. Set to 0 for no per-search limit. The final page is always kept in full, so counts can slightly overshoot. |
includeJobDetails | boolean | true | Fetch each job's detail page to fill the full description, employmentType, remoteType, positions, publishDate, education, benefits, company profile, and contact fields. Turn off for a faster scan that returns only the always-present listing summary (title, company, location, salary, sponsored flag, job link). |
descriptionFormat | string | Plain text | How to return the description: plain text, HTML, or both in their own fields. Applies only when Fetch Full Job Details is on. |
Output
Each job is one row. Here is a representative record with full details enabled:
{"title": "Účtovník / Účtovníčka","company": "Tatra banka, a.s.","companyId": "C12345","companyUrl": "https://www.profesia.sk/praca/tatra-banka/C12345","location": "Bratislava","region": "Bratislavský kraj","employmentType": ["full-time"],"remoteType": "hybrid","positions": ["Účtovník", "Ekonóm"],"salaryText": "Od 1 800 EUR/mesiac","salaryMin": 1800,"salaryMax": null,"salaryCurrency": "EUR","salaryPeriod": "month","publishDate": "2026-07-14","education": "Vysokoškolské I. stupňa","benefits": "Flexibilný pracovný čas, 5 dní dovolenky navyše, stravné lístky","descriptionSnippet": "Hľadáme skúseného účtovníka do nášho tímu...","description": "Náplň práce:\n- Spracovanie účtovných dokladov\n- Mesačné uzávierky...","descriptionHtml": "<p>Náplň práce:</p><ul><li>Spracovanie účtovných dokladov</li></ul>","companyDescription": "Tatra banka patrí medzi najväčšie banky na Slovensku...","companyEmployeeRange": "1000 a viac zamestnancov","companyLogo": "https://www.profesia.sk/images/logos/12345.png","contactName": "Jana Nováková","contactEmail": null,"contactPhone": "+421 2 5919 1000","extractedEmails": [],"extractedPhones": [],"extractedUrls": [],"applyUrl": "https://www.profesia.sk/praca/tatra-banka/O4567890","isSponsored": false,"jobUrl": "https://www.profesia.sk/praca/tatra-banka/O4567890","jobId": "4567890","searchQuery": "účtovník","scrapedAt": "2026-07-15T14:30:00Z"}
Which fields are always present? The listing summary —
title,company,location,salaryText(plus the parsedsalaryMin/salaryMax/salaryCurrency/salaryPeriod),isSponsored,jobUrl, andjobId— is filled on every row. Everything else, marked with † below (full description,employmentType,remoteType,positions,publishDate,education, benefits, company profile, and contact fields), is populated only when Fetch Full Job Details (includeJobDetails, on by default) is enabled.
Core Job Fields
| Field | Type | Description |
|---|---|---|
title | string | Job title |
company | string | Employer name |
companyId † | string | Profesia company identifier (e.g. "C12345") |
companyUrl † | string | Employer's Profesia.sk company page |
location | string | Job location as shown on the listing |
region | string | Slovak region — reflects the Region filter you applied (e.g. "Bratislavský kraj"); null when no region filter is set |
employmentType † | array | Employment types offered (full-time, part-time, etc.) |
remoteType † | string | Work location: on-site, remote, or hybrid |
positions † | array | Named roles the offer covers |
isSponsored | boolean | Whether the listing is a promoted posting |
jobUrl | string | Direct link to the job offer |
jobId | string | Unique job identifier (used for deduplication) |
† Populated only when Fetch Full Job Details is on.
Salary
| Field | Type | Description |
|---|---|---|
salaryText | string | Salary exactly as displayed (e.g. "Od 1 800 EUR/mesiac") |
salaryMin | number | Parsed minimum salary |
salaryMax | number | Parsed maximum salary, when a range is given |
salaryCurrency | string | Currency code (e.g. EUR) |
salaryPeriod | string | Pay period: month, hour, year, or day |
Description & Requirements
Populated when Fetch Full Job Details is on.
| Field | Type | Description |
|---|---|---|
descriptionSnippet | string | Short summary from the search card |
description | string | Full job description as plain text |
descriptionHtml | string | Full description with original HTML formatting |
benefits | string | Listed employee benefits |
education | string | Required education level, when available |
Company
Populated when Fetch Full Job Details is on.
| Field | Type | Description |
|---|---|---|
companyDescription | string | About the employer |
companyEmployeeRange | string | Company size band (e.g. "1000 a viac zamestnancov") |
companyLogo | string | Employer logo URL, when available |
Contact & Apply
Populated when Fetch Full Job Details is on.
| Field | Type | Description |
|---|---|---|
applyUrl | string | Application link for the offer |
contactPhone | string | Contact phone number, when the offer names a contact |
contactName | string | Contact person, when the offer names one |
contactEmail | string | Contact email, when the offer publishes one (rarely available — most offers apply via a link) |
extractedEmails | array | Emails found in the description text (rarely available) |
extractedPhones | array | Phone numbers found in the description text (rarely available) |
extractedUrls | array | Links found in the description text (rarely available) |
Metadata
| Field | Type | Description |
|---|---|---|
publishDate † | string | Date the job was published (ISO date) |
searchQuery | string | The keyword or source that produced this row |
scrapedAt | string | ISO timestamp of extraction |
† Populated only when Fetch Full Job Details is on.
Tips for Best Results
- Leave everything empty for a broad sweep — with no keywords or filters the scraper collects the newest jobs across all of Slovakia. Add keywords and filters to narrow from there.
- Sample, then scale — start with
maxResultsat 50 to confirm the data fits your needs, then raise it (up to 5,000 per keyword) for a full pull. - Toggle detail for speed versus depth — keep Fetch Full Job Details on (the default) for the full description,
employmentType,remoteType,positions,publishDate, benefits, company profile, and contact details. Turn it off for a faster scan that returns only the always-present listing summary (title, company, location, salary, sponsored flag, and job link). - Every selected employment type is covered (power tip) — when you pick several employment types, the result budget is split fairly across them: each type gets its own share of
maxResultsand every selected type contributes at least its first page, so a common type can't crowd out rarer ones. For a deep pull of one specific type, run it on its own with a highermaxResults. - Minimum Salary hides salary-less jobs — setting a salary floor excludes offers that don't publish a salary at all. Leave it empty if you want those postings too.
- Schedule the 24-hour window — pair "Posted within: Last 24 hours" with a daily run to capture only fresh roles and avoid re-collecting the same jobs.
- Reuse browser filters and categories via URLs — paste a filtered Profesia.sk search or category page into Direct URLs to carry over filters you already set up, including job categories beyond the dropdowns.
Pricing
From $1.30 per 1,000 results — a flat, predictable rate for Slovakia's largest job board. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.
| Results | No discount | Bronze | Silver | Gold |
|---|---|---|---|---|
| 100 | $0.16 | $0.15 | $0.14 | $0.13 |
| 1,000 | $1.55 | $1.50 | $1.40 | $1.30 |
| 10,000 | $15.50 | $15.00 | $14.00 | $13.00 |
| 100,000 | $155.00 | $150.00 | $140.00 | $130.00 |
A "result" is any job row in the output dataset. No compute or time-based charges — you pay per result, plus a small fixed per-run start fee.
Integrations
Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:
- Zapier / Make / n8n — Workflow automation
- Google Sheets — Direct spreadsheet export
- Slack / Email — Notifications on new results
- Webhooks — Trigger custom APIs on run completion
- Apify API — Full programmatic access
Legal & Ethical Use
This actor is designed for legitimate labor-market research, recruitment, and analytics. You are responsible for complying with applicable laws and Profesia.sk's Terms of Service. Use collected contact details responsibly and in line with data-protection rules such as GDPR — do not use them for spam, harassment, or any unlawful purpose.