Pracuj.pl Scraper
Pricing
from $1.50 / 1,000 results
Pracuj.pl Scraper
Scrape pracuj.pl for structured Polish job data: titles, companies, salaries in PLN, contract types (B2B, umowa o pracę), tech stacks, requirements & full descriptions. 200k+ listings with repost detection.
Pricing
from $1.50 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Actor stats
1
Bookmarked
5
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share

Scrape structured job data from pracuj.pl — Poland's largest job portal with 200,000+ active listings. Covers all contract types specific to Polish labour law (B2B, umowa o pracę, zlecenie), structured salary data in PLN, technology stacks, requirements, and full job descriptions.
Why this scraper?
🏭 Poland's #1 job board — complete coverage
Pracuj.pl is the dominant platform in the Polish job market, used by enterprise employers, startups, and public institutions alike. Coverage spans all industries, regions, and seniority levels from internship to C-suite.
🧾 Polish contract types — fully parsed
The scraper extracts all contract types specific to Polish law: umowa o pracę, kontrakt B2B, umowa zlecenie, umowa o staż, and more. Each contract type is paired with its salary range where published.
💰 Structured salary data — per contract type
Salaries are returned as structured fields — salaryMin, salaryMax, salaryCurrency (PLN), salaryPeriod (monthly/hourly), and salaryKind (gross, net, net+VAT). Multi-contract listings report the salary for the primary contract.
🛠️ Technology stacks — extracted separately
For IT and tech roles, required and optional technologies are returned as dedicated arrays (technologiesRequired, technologiesNice), parsed separately from the free-text description. Ready for analytics without any post-processing.
🔄 Repost detection — cross-run deduplication
Pracuj.pl employers regularly republish the same role to stay visible. The scraper tracks all seen listing IDs with a 90-day TTL. Set skipReposts: true to receive only genuinely new postings.
📍 Full location data — city, region, coordinates
Each listing returns the full workplace address broken down into city, voivodeship, country, and GPS coordinates — ready for geographic filtering and distance calculations.
Input parameters
| Parameter | Type | Description | Default |
|---|---|---|---|
keywords | string | Job title or keyword, e.g. "Java Developer" | — |
location | string | City or region, e.g. "Warszawa", "Kraków" | — (all Poland) |
maxResults | integer | Maximum listings to return | 100 |
daysOld | integer | Only return listings posted within N days (1/3/7/14/30) | — |
contractType | select | Filter by contract type | any |
workMode | select | any · remote · hybrid · office · mobile | any |
workSchedule | select | any · fulltime · parttime | any |
skipReposts | boolean | Skip listings seen in previous runs | false |
startUrls | array | Specific Pracuj.pl search URLs to scrape | — |
Output schema
{"id": "1004727799","groupId": "84450000-56be-0050-ca62-08de89b21d07","url": "https://www.pracuj.pl/praca/fullstack-developer-java-angular-wroclaw,oferta,1004727799","title": "Fullstack Developer (Java+Angular)","company": "HIBERUS POLAND SP. Z O.O.","companyId": "1074071565","companyUrl": "https://pracodawcy.pracuj.pl/company/1074071565","companyLogoUrl": "https://logos.gpcdn.pl/loga-firm/1074071565/logo_280x280.png","location": "Wrocław, Stare Miasto","city": "Wrocław","region": "dolnośląskie","country": "Polska","address": "plac Teatralny 1, Stare Miasto, Wrocław","latitude": 51.10545,"longitude": 17.03177,"isWholePoland": true,"contractTypes": ["B2B contract"],"workModes": ["home office work"],"workSchedules": ["full-time"],"positionLevels": ["specialist (Mid / Regular)", "senior specialist (Senior)"],"isRemote": true,"salaryDisplayText": "16 800–21 000 zł netto (+ VAT) / mies.","salaryMin": 16800,"salaryMax": 21000,"salaryCurrency": "PLN","salaryPeriod": "monthly","salaryKind": "net (+ VAT)","description": "<h3>Responsibilities</h3><ul><li>Designing and developing...</li></ul>","descriptionText": "Responsibilities:\n- Designing and developing...","descriptionMarkdown": "### Responsibilities\n\n- Designing and developing...","technologiesRequired": ["Java", "Angular", "TypeScript", "Oracle RDBMS", "Git"],"technologiesNice": ["Playwright", "GitHub Copilot"],"responsibilities": ["Designing and developing new functionalities..."],"requirementsRequired": ["Commercial experience as Full-stack Developer (Java + Angular)"],"requirementsNice": ["Knowledge of the Dutch language"],"benefits": ["Multisport card", "Private medical care"],"categories": [{ "id": 5016003, "name": "Programming", "parentId": 5016, "parentName": "IT software development" }],"applyUrl": "https://www.pracuj.pl/aplikuj/fullstack-developer...,oferta,1004727799","publishDate": "2026-04-04","publishDateISO": "2026-03-24","expirationDate": "2026-04-23","isSuperOffer": true,"isFranchise": false,"isOptionalCv": false,"isOneClickApply": false,"source": "pracuj.pl","scrapedAt": "2026-04-04T14:30:00.000Z","contentHash": "a3f1b2c4d5e67890","summary": "Fullstack Developer (Java+Angular) @ HIBERUS POLAND — Wrocław, Stare Miasto — 16 800–21 000 zł netto (+ VAT) / mies.","isRepost": false,"originalPublishDate": null,"originalUrl": null}
Examples
1 — Remote Java developers in Warsaw, posted in the past 7 days
{"keywords": "Java Developer","location": "Warszawa","workMode": "remote","daysOld": 7,"maxResults": 200}
2 — All B2B IT contracts, any location, full-time only
{"keywords": "developer","contractType": "b2b","workSchedule": "fulltime","maxResults": 500}
3 — Scrape a specific saved search URL
{"startUrls": [{ "url": "https://www.pracuj.pl/praca/python;kw/krakow;wp" }],"maxResults": 50}
4 — Daily monitor: skip reposts, past 24 hours only
{"keywords": "Project Manager","daysOld": 1,"skipReposts": true,"maxResults": 1000}
5 — Polish internships and trainee positions
{"contractType": "internship","location": "Kraków","maxResults": 100}
💰 Pricing
$1.50 per 1,000 results — you only pay for successfully retrieved listings. Failed retries and filtered reposts are never charged.
| Results | Cost |
|---|---|
| 100 | ~$0.15 |
| 1,000 | ~$1.50 |
| 10,000 | ~$15.00 |
| 100,000 | ~$150.00 |
Flat-rate alternatives typically charge $29–$49/month regardless of usage. At 10,000 results/month, this scraper costs significantly less with no commitment.
Use the Max results cap in the input to control your spend exactly.
Performance
| Run size | Approx. time |
|---|---|
| 100 listings | ~2 min |
| 1,000 listings | ~18 min |
| 10,000 listings | ~3 hours |
Detail pages are fetched individually — throughput depends on server response times. Runs include automatic retry on transient errors.
Known limitations
- Salary: Not published by all employers —
salaryMin,salaryMaxwill benullwhen the employer hasn't disclosed pay. - Multi-contract salary: When a listing advertises multiple contract types (e.g. B2B + umowa o pracę), only the salary of the first contract type with salary data is returned in the top-level salary fields.
- Apply URL: The
applyUrllinks to the Pracuj.pl application form, not necessarily to an external employer ATS. - Location multi-posting: A single job posting may be listed at multiple locations. Each location is returned as a separate row with its own
id(partitionId). ThegroupIdfield links them. - Technology sections: Only present for roles that use the structured tech section, primarily IT and engineering positions.
- Filters:
daysOldaccepts only the values 1, 3, 7, 14, and 30. Other values are rounded up to the nearest accepted value.
Technical details
- Source: pracuj.pl — Poland's largest employment platform
- Memory: 256 MB
- Repost storage: KeyValueStore
pracuj-pl-job-dedup, 90-day TTL - Retry: Automatic retry on network errors, exponential backoff, 3 attempts per request
Additional services
Need a custom actor, additional filters, scheduled runs, or integration support? Send an email to info@unfencedgroup.nl — we build on request.
Built by unfenced-group · Issues? Open a ticket or send a message.