Duunitori Scraper - Finnish Job Listings & Salaries
Pricing
from $2.00 / 1,000 result scrapeds
Duunitori Scraper - Finnish Job Listings & Salaries
Scrape job listings from Duunitori.fi, Finland's leading job board with 22,000+ listings. Search by keyword, location, and category. Extract job titles, companies, salaries, employment types, descriptions, and application deadlines. No login or cookies required.
Pricing
from $2.00 / 1,000 result scrapeds
Rating
0.0
(0)
Developer
Studio Amba
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
6 days ago
Last modified
Categories
Share
What does Duunitori & Jobbland Scraper do?
Duunitori & Jobbland Scraper extracts job listings from two Duunitori Group job boards: Duunitori.fi (Finland, 22,000+ listings) and Jobbland.se (Sweden, 51,000+ listings). Pick a country and it collects job titles, companies, salaries, locations, categories, application deadlines, and full job descriptions. No login or cookies required.
Use it on the Apify platform to get structured Nordic job data via API, schedule recurring scrapes, and integrate with tools like Zapier, Make, Google Sheets, and Slack.
How to scrape Duunitori and Jobbland data
- Go to the Duunitori & Jobbland Scraper on the Apify Store.
- Click Try for free to open the actor in the Apify Console.
- Pick a Country: Finland (Duunitori.fi) or Sweden (Jobbland.se).
- Enter a search query in the local language (e.g. "ohjelmoija" for Finland, "sjuksköterska" for Sweden) or English.
- Optionally set a city (e.g. "Helsinki", "Göteborg").
- Optionally filter by category instead of a city.
- Set the maximum number of results you want.
- Click Start and wait for the run to finish.
- Download your data as JSON, CSV, Excel, or HTML from the Output tab.
Why use Duunitori & Jobbland Scraper?
- Recruitment and hiring -- Monitor job postings from competitors or across sectors to understand hiring trends in Finland and Sweden.
- Salary research -- Collect salary data where employers publish it, to benchmark compensation in the Nordic market.
- Market analysis -- Track which sectors are growing, which companies are hiring most, and where demand is concentrated.
- Lead generation -- Identify companies actively hiring in Finland or Sweden to target with B2B recruitment services or tools.
- Academic research -- Gather structured Nordic labor market data for economic, sociological, or policy studies.
- Job aggregation -- Feed Nordic job data into your own job board, career platform, or notification system.
Input
| Field | Type | Required | Description |
|---|---|---|---|
country | String | No | FI for Duunitori.fi (Finland) or SE for Jobbland.se (Sweden). Defaults to FI. |
searchQuery | String | No | Job search keyword in the local language or English. Finland defaults to "ohjelmoija" if empty. Sweden defaults to "utvecklare" only if Location and Category are also empty. |
location | String | No | City or region in the selected country (e.g. "Helsinki", "Tampere" for Finland; "Stockholm", "Göteborg", "Malmö" for Sweden). Leave empty for the whole country. Takes priority over Category if both are set. |
category | String | No | Job category/industry filter (e.g. "IT", "myynti" for Finland; "ekonomi", "forsaljning" for Sweden). Leave empty for all categories. Ignored if Location is set. |
maxResults | Integer | No | Maximum number of job listings to scrape (default: 100, max: 10000). |
proxyConfiguration | Object | No | Proxy settings. Residential proxies in the target country are recommended -- the actor picks the right country automatically when this is left empty. |
Example input
{"country": "SE","searchQuery": "sjuksköterska","location": "Göteborg","maxResults": 50,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "SE"}}
Output
Each result contains structured data about a single job listing scraped from both the search results page and the individual job detail page. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.
Example output (Finland)
{"jobTitle": "Software Developer","company": "Hitachi High-Tech Analytical Science","location": "Helsinki","salary": "3 500 - 5 000 EUR/kk","employmentType": "Kokoaikainen, Vakinainen","category": "IT, ohjelmointi","postedDate": "29.5","applicationDeadline": "15.6.2026","jobDescription": "Mitä on luvassa? We are looking for a Software Developer to join our team in Helsinki...","url": "https://duunitori.fi/tyopaikat/tyo/software-developer-sdsuu-20310770","scrapedAt": "2026-06-09T12:30:00.000Z"}
Example output (Sweden)
{"jobTitle": "Sjuksköterska till specialistberoendevården","company": "Region Västernorrland","location": "Göteborg","salary": "38 000-51 000 kr/månad","employmentType": "","category": "Hälso- och sjukvård","postedDate": "2026-09-08","applicationDeadline": "2026-10-05","jobDescription": "Vi söker en engagerad sjuksköterska till vår avdelning...","url": "https://jobbland.se/jobb/sjukskoterska-sasrb-20576955","scrapedAt": "2026-09-21T18:30:00.000Z"}
Data fields
| Field | Type | Description |
|---|---|---|
jobTitle | String | Job position title |
company | String | Hiring company name |
location | String | Job location (city or region) |
salary | String | Salary information when available |
employmentType | String | Type of employment (Finland only -- Kokoaikainen, Osa-aikainen, etc. Empty for Sweden.) |
category | String | Job category or industry sector |
postedDate | String | When the job was published |
applicationDeadline | String | Last date to apply, when published |
jobDescription | String | Full job description text from the detail page |
url | String | Direct URL to the job listing |
scrapedAt | String | ISO 8601 timestamp of when the data was collected |
Cost estimate
This actor visits both search pages and individual detail pages. It costs $0.02 per run plus $0.002 per job listing -- a run of 500 listings costs about $1.02. Usage cost only settles once a run reports SUCCEEDED.
Tips
- Use local-language keywords for better results (Finnish for Duunitori, Swedish for Jobbland).
- Set
maxResultsto a reasonable number to control cost and run time. - Country-specific residential proxies are recommended for reliable scraping.
- Schedule recurring runs to track new job postings daily or weekly.
- Empty input
{}works out of the box -- it defaults to Finland and searches for "ohjelmoija" (programmer). - Setting both
locationandcategoryis not supported together --locationtakes priority andcategoryis ignored.
Finnish employment type reference
| Finnish | English |
|---|---|
| Kokoaikainen | Full-time |
| Osa-aikainen | Part-time |
| Maaraaikainen | Fixed-term |
| Vakinainen | Permanent |
| Kesatyo | Summer job |
| Harjoittelu | Internship |
| Vuokratyo | Temporary/agency work |
Limitations
- Salary data is not available for all listings -- many employers do not publish salary ranges.
- Employment type is only extracted for Finland; Jobbland.se does not consistently label it.
- Search queries in the local language of the selected country yield the best results.
- Data is scraped from the public website and may change without notice if either site updates their HTML structure.
Integrations
Connect Duunitori & Jobbland Scraper with your existing tools and workflows:
- Google Sheets -- Export job listings directly to a spreadsheet for easy filtering and sharing.
- Slack -- Get notified when new jobs matching your criteria appear.
- Zapier / Make -- Build workflows that react to new Nordic job postings in real time.
- Custom API -- Access all results programmatically via the Apify API in JSON format.
FAQ and support
Is it legal to scrape Duunitori.fi and Jobbland.se? Scraping publicly available data is generally permitted under EU law. This actor only accesses public job listings that require no login.
How often is the data updated? The actor scrapes live data each time it runs. Schedule it daily or weekly to track changes.
Why are some fields empty? Not all employers provide salary, employment type, or category information. The scraper extracts all available data from each listing.
I found a bug or have a feature request. Open an issue in the Issues tab on the actor page. You can also request a custom scraping solution.