Pracuj.pl Scraper - Poland Jobs and Salaries
Pricing
from $1.20 / 1,000 results
Pracuj.pl Scraper - Poland Jobs and Salaries
Scrape Pracuj.pl jobs with employers, locations, salaries, contracts, technologies, requirements, benefits and application URLs.
Pricing
from $1.20 / 1,000 results
Rating
0.0
(0)
Developer
Ben
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share
Collect structured job listings from Pracuj.pl, one of Poland's largest employment platforms. Search by keyword and location or paste complete Pracuj.pl result URLs with the filters you already use. The Actor returns hiring companies, locations, salaries, contracts, work modes, technologies, requirements, benefits, application links, and publication dates in a clean dataset.
This Actor is designed for recruiting research, job alerts, salary analysis, employer monitoring, and Polish labor-market intelligence. Detail enrichment is enabled by default, so a result can include much more than the short search card. Data is ready for JSON, CSV, Excel, API, webhook, Make, Zapier, and n8n workflows.
What can you use it for?
- Monitor new vacancies for selected roles, technologies, or cities.
- Build daily job alerts without manually checking the same searches.
- Compare disclosed salary ranges across companies and locations.
- Track which employers are hiring for Python, Java, SAP, sales, finance, logistics, healthcare, or other skills.
- Research remote, hybrid, and on-site hiring patterns in Poland.
- Create employer prospect lists from public hiring activity.
- Analyze contract types, seniority levels, schedules, and job categories.
- Feed a recruiting dashboard, talent-intelligence database, CRM, spreadsheet, or internal search tool.
- Preserve requirements and benefits before a vacancy expires or changes.
Pracuj.pl often exposes several locations for one vacancy group. The Actor expands those offers into distinct listing records and deduplicates them by their stable offer identifier, so multi-location searches remain useful without billing duplicate rows.
Input options
You can start with simple fields or complete search URLs.
Keyword and location
Set keyword to a title, role, skill, or employer-related phrase such as python, data engineer, księgowy, sprzedaż, or project manager. Add an optional Polish location, such as Warszawa, Kraków, Wrocław, Gdańsk, or Poznań.
Example:
{"keyword": "python","location": "Warszawa","includeDetails": true,"maxResults": 25}
Pracuj.pl search URLs
For complex filters, configure the search on Pracuj.pl and paste the resulting URL into searchUrls. This preserves filters such as salary, contract, work mode, experience level, category, and publication age. You can provide several URLs in one run; duplicate offers are saved only once.
{"searchUrls": ["https://www.pracuj.pl/praca/python;kw/warszawa;wp"],"includeDetails": true,"maxResults": 50}
maxResults is a global cap across the run. The default is deliberately small so first runs and scheduled health checks finish quickly. Increase it when you need a larger export.
Detail enrichment
Keep includeDetails enabled when you need recruiting, salary, or market-intelligence data. For each result, the Actor fetches the public detail payload and can add:
- responsibilities and expected requirements;
- optional requirements and technology stacks;
- benefits and employer-provided offering details;
- company description and AI-generated listing summary when present;
- structured employment types, schedules, levels, and work modes;
- direct application, one-click application, and external ATS form links;
- initial publication, latest publication, and expiration timestamps;
- normalized salary values where the listing discloses them.
Disable detail enrichment for the fastest possible search-card export. A failed individual detail request does not discard the job: the Actor logs the problem and returns the available search summary.
Output fields
Each dataset row represents one unique Pracuj.pl offer location. Common fields include:
| Field | Description |
|---|---|
id, group_id | Stable offer and grouped-vacancy identifiers |
title | Job title |
company, company_id | Hiring company name and public identifier |
company_profile_url, company_logo | Public employer profile and logo |
location, region, country | Display location and structured geography |
latitude, longitude | Coordinates when supplied on the result |
summary, ai_summary | Search description and optional generated summary |
responsibilities | Employer-provided responsibilities |
requirements, optional_requirements | Required and optional candidate criteria |
technologies | Expected and optional technologies |
benefits, offered | Benefits and employer offering details |
salary | Original salary text shown by Pracuj.pl |
salary_min, salary_max | Parsed numeric range when disclosed |
salary_currency, salary_period | Currency and month, hour, or year period |
salary_details | Contract-specific structured salary objects |
contract_types | Employment contract types |
position_levels | Seniority or position levels |
work_schedules, work_modes | Schedule and remote/hybrid/on-site modes |
remote_work_allowed, entirely_remote | Remote-work indicators |
categories, primary_category | Job categories supplied by the source |
application_url, ats_form_url | Direct application and external ATS links |
one_click_apply, remote_recruitment | Application-process indicators |
first_published_at, published_at, expires_at | Vacancy lifecycle timestamps |
lead_score | Completeness score for employer research |
url | Direct Pracuj.pl vacancy page |
search, scraped_at | Source search and UTC collection time |
Fields remain present with null, false, or empty values when an employer does not disclose the information. A vacancy without a salary or ATS link is still a valid result.
Pricing
The Actor uses transparent pay-per-event pricing:
- a small Actor-start event covers run initialization;
- each unique row written to the default dataset is one
resultevent at $0.0012; - duplicate offers are not charged twice within the same run;
- detail enrichment has no separate event fee.
At the current result price, 1,000 unique jobs cost $1.20 plus the small start event. The Apify Console displays the complete pricing configuration before each run.
Scheduling and automation
Save a Task for each role or location you monitor, then run it daily or weekly. Apify can trigger a webhook when a run finishes, while the dataset API can deliver results to your own service.
A practical monitoring workflow is:
- Run a saved Task for one focused search.
- Read the default dataset through the API.
- Compare
idvalues with the previous run. - Keep only newly published jobs.
- Send the new records to Slack, email, Telegram, a CRM, or a spreadsheet.
Use the stable id field for change detection. Titles, descriptions, and publication timestamps can change while a listing remains active.
Reliability and responsible use
The Actor reads public search and vacancy data made available by Pracuj.pl at runtime. It does not log in, submit applications, collect private candidate profiles, or bypass account permissions. It is not affiliated with or endorsed by Pracuj.pl.
Requests use a browser-compatible HTTP client through one sticky Polish residential session, with conservative concurrency, retry handling, pagination bounds, and stable-ID deduplication. If the source returns no matching records, the run fails explicitly instead of producing a misleading successful empty dataset.
Users are responsible for complying with applicable terms, database rights, privacy rules, and employment regulations. Keep schedules proportionate to your actual workflow. Do not republish full descriptions as a competing job board, and use employer data for legitimate recruiting, hiring, or market research rather than unsolicited bulk messaging.
FAQ
Does it need a Pracuj.pl account or API key?
No. It reads public job-search and public vacancy-detail data.
Can it preserve filters from the website?
Yes. Apply the filters on Pracuj.pl, copy the result URL, and pass it in searchUrls.
Can it collect several locations for one vacancy?
Yes. Pracuj.pl groups some vacancies with several offer locations. The Actor expands them into distinct stable offers and deduplicates repeated identifiers.
Why are some salary fields empty?
Not every employer publishes compensation. The original text remains in salary; normalized values are populated only when a numeric range can be parsed reliably.
Does it return requirements and benefits?
Yes, when includeDetails is enabled and the employer provides those sections.
What happens if one detail page fails?
The Actor logs a warning and returns the search-level fields for that job. It does not bill an extra enrichment event.
How can I request support?
Open an issue on the Actor page with the run ID, the input that reproduced the problem, and the expected behavior. Do not include credentials or private data. If the Actor is useful, a Store review helps other teams assess its reliability.
Related Actors
- No Fluff Jobs Scraper for technology roles and salary-transparent listings in Poland.
- StepStone Scraper for European job-board monitoring.
- EURES Jobs Scraper for cross-border European vacancies.
- Welcome to the Jungle Jobs Scraper for company-profile and startup hiring research.
- Remote Jobs Aggregator for normalized remote vacancies across multiple sources.
Keywords: Pracuj.pl scraper, Pracuj scraper, Poland jobs API, Polish job data, Warsaw jobs, salary data Poland, employer hiring signals, recruitment intelligence, job-market research, Pracuj.pl export, Poland job alerts, ATS links, Polish vacancies.