jobs.ch Jobs Scraper — Switzerland, CHF Salaries, $0.80/1K
Pricing
from $0.64 / 1,000 jobs
jobs.ch Jobs Scraper — Switzerland, CHF Salaries, $0.80/1K
jobs.ch jobs scraper for Switzerland: title, company, place, salary range in CHF, workload %, required languages, posting dates, full description — plus which jobs are new since your last run. Search by keyword and location or paste a jobs.ch search URL. No login.
Pricing
from $0.64 / 1,000 jobs
Rating
0.0
(0)
Developer
Northbell
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 hours ago
Last modified
Categories
Share
jobs.ch Jobs Scraper
Stop re-checking jobs.ch by hand: get only the new jobs for your searches every morning — in a sheet, Slack or your own job board. Search jobs.ch (Switzerland) by keyword, location or a pasted search URL and get every matching job as clean JSON with the salary split into min / max / interval; schedule it and each run marks which jobs are new since your last run.
**Measured, not estimated:** 300 jobs in 89 s, about **$0.0054 of Apify platform usage per 1,000 jobs** at 512 MB (2026-09-30).How "new since last run" works
The Actor remembers which jobs each search returned last time. A job it has not seen before is marked isNewSinceLastRun: true.
If the whole search fits within Max jobs, the comparison is exact and jobs that disappeared come back as type: "closed" rows. If the search is bigger than Max jobs, a job only counts as new when it was also posted after your previous run — so an old job that merely moved into view is never reported as new.
Filters (title, location text, salary, remote) never change the comparison, so changing a filter never makes jobs look new.
What you get
| Field | |
|---|---|
title, company, location | as listed |
salaryMin, salaryMax, salaryCurrency, salaryInterval | the salary range as published (CHF per year) — null when not shown |
workloadMinPercent, workloadMaxPercent | the workload the Swiss way, e.g. 80–100% |
languages | languages the employer asks for |
preview, description | the search preview and the full job text (turn off with Include the full description) |
postedAt, firstPostedAt, isPaidListing | current and first publication dates, and whether it is a paid listing |
isNewSinceLastRun | true / false, or null on the first run (unknown, not "old") |
jobUrl | link to the job on jobs.ch |
search | which of your searches returned it |
Input
Put one search per line in Searches (e.g. accountant) and optionally a Location (e.g. Zürich). Or set the filters on the site and paste the result page into Search URLs (e.g. https://www.jobs.ch/en/vacancies/?term=accountant&location=Z%C3%BCrich) — every filter the site has then applies. Many searches in one run are cheaper than one run each.
A search the site refuses comes back as an error row and the run carries on.
Example output
One real row from a test run (long text shortened here with …).
{"type": "job","provider": "jobsch","search": "accountant","searchLocation": "Zürich","jobId": "35fef480-962c-4871-a6bd-6e5183ebac8c","title": "Treuhand-MandatsleiterIN 70-100% / Fest","company": "Schöpfer AG","location": "Zürich","salaryMin": null,"salaryMax": null,"salaryCurrency": null,"salaryInterval": null,"workloadMinPercent": 100,"workloadMaxPercent": 100,"languages": [],"preview": "Einleitung \n40 Jahre Erfahrung machen die Schöpfer AG zu einem absoluten Experten im Bereich der Personalberatung und Personalvermittlung. Wir sind ...","postedAt": "2026-09-30T16:32:08.000Z","firstPostedAt": "2026-09-30T16:33:46.000Z","isPaidListing": true,"jobUrl": "https://www.jobs.ch/en/vacancies/detail/35fef480-962c-4871-a6bd-6e5183ebac8c/","companyLogo": "https://media.jobs.ch/images/b90fd0b3-7c1d-41cc-ae17-4c12e5326be7/1480x1480.png","description": "Introduction\n40 years of experience make Schöpfer AG an absolute expert in the field of personnel consulting and recruitment. We specialise in the areas of trus…","isNewSinceLastRun": false}
Get only the new jobs every morning (3 steps)
- Open this Actor in Apify Console, fill in your searches, set What to return to Only jobs that are new since the last run, and click Save as a new task.
- On the task, add a Schedule — for example daily at 07:00.
- Open the task's Integrations tab and connect Slack, email, Google Sheets (or Zapier / Make / a webhook). Each morning you get only the new jobs.
You pay only for the new jobs plus $0.01 per run, so a quiet day costs about a cent. When you export by hand, pick the Jobs view: 12 tidy columns, title first, instead of every raw field.
Pricing
$0.80 per 1,000 jobs, plus $0.01 per run. Closed-job rows and errors are free. With Only jobs that are new since the last run, a daily schedule only pays for the new ones.
For AI agents
For a fast answer call with {"searches": ["accountant"], "maxJobsPerSearch": 20, "includeDescription": false} — a few seconds. The defaults (up to 200 jobs with full descriptions) can take about a minute, which is longer than many agent tool timeouts. Each row has type: job, closed or error. isNewSinceLastRun: null means "no previous run to compare with".
More job scrapers from northbell
Job sites: SEEK · JobStreet · JobsDB · Instahyre · Reed · InfoJobs · XING · Dice · HelloWork · Computrabajo · Foundit · jobs.ch · jobup.ch · Arbeitsagentur · Arbeitnow.
Company career pages with exact new/closed tracking: Greenhouse · Lever · Workday · AI companies.