Cadremploi Scraper — French Executive & Management Jobs avatar

Cadremploi Scraper — French Executive & Management Jobs

Pricing

from $1.19 / 1,000 results

Go to Apify Store
Cadremploi Scraper — French Executive & Management Jobs

Cadremploi Scraper — French Executive & Management Jobs

Scrape job listings from Cadremploi.fr — France's leading executive and management job board. Filter by keyword and location. Returns title, company, salary range, contract type and full descriptions with apply URLs.

Pricing

from $1.19 / 1,000 results

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

2

Bookmarked

20

Total users

4

Monthly active users

5 days ago

Last modified

Share

Cadremploi.fr Scraper

Cadremploi.fr Scraper

Extract job listings from Cadremploi.fr, France's leading job board for executives and managers (cadres), across its full catalogue of 20,000+ live vacancies. Search by keyword, city, radius, contract type and job function — every filter is sent to Cadremploi's own search engine, so you get every matching job. No API key required.


Why this scraper?

🇫🇷 Built for the French cadre market

A dedicated Cadremploi scraper, not a global tool with a country dropdown. Contract types (CDI, CDD, alternance), job functions and locations are the ones Cadremploi actually uses.

🔍 Real search, not a filtered feed

Keyword, location, radius, contract type and job function are passed straight to Cadremploi's search. You reach the entire catalogue — not just whatever happens to be in the newest few listings.

📄 Complete job data

Full description in HTML, plain text and Markdown, apply link, company profile, exact posted date, and the date the job first appeared.

💶 Structured salary

Minimum, maximum, pay period and currency, parsed from the listing where the employer publishes them.

📍 Precise location

City, postal code, region, country and latitude/longitude, plus a remote-work flag.

🔁 Repost and change detection

Every record carries isRepost and changeStatus, so a scheduled run tells you what is genuinely new, what changed, and what is a re-listing of a job you already have.


Input parameters

ParameterTypeDefaultDescription
searchQuerystring(empty)Job title, role or skill, such as responsable marketing. Leave empty to browse every job.
locationstring(empty)City, department or region, such as Paris or Ile-de-France. Leave empty for all of France.
radiusstring"20"Search radius around the city: 0, 10, 20, 50 or 100 km. These are the only values Cadremploi supports.
contractTypesarray[]CDI, CDD, FREELANCE, STAGE, ALTERNANCE. Empty means all.
jobFunctionarray[]Business area — MARKETING, IT, FINANCE, SALES, HR and 10 more. Empty means all.
daysOldinteger0Only keep jobs posted within this many days. 0 disables the filter.
remoteOnlybooleanfalseKeep only jobs mentioning remote work or télétravail.
fetchDetailsbooleantrueFetch each job's own page for the full description, salary, company profile and apply link.
skipRepostsbooleanfalseSkip jobs already returned by an earlier run.
startUrlsarray[]Paste Cadremploi search or job URLs directly. Overrides the search fields.
maxItemsinteger100Cap on results. 0 means every matching job.

Job function values: ADMINISTRATION, FINANCE, AUDIT, CONSULTING, LEGAL, HR, RESEARCH, LOGISTICS, PRODUCTION, IT, ECOMMERCE, SALES, EXPORT, MARKETING, COMMUNICATION.


Output schema

Every field below is present on every record. Fields Cadremploi does not publish for a given job are returned as null rather than omitted.

Always present

FieldTypeDescription
idstringCadremploi offer ID. Stable across runs.
urlstringLink to the job's page on Cadremploi.
titlestringJob title.
companystring | nullHiring company or recruitment agency.
locationstring | nullLocation as shown on the job card.
citystring | nullCity name.
contractTypestring | nullCDI, CDD, Freelance, Stage or Alternance.
snippetstring | nullShort preview of the description, from the job card.
publishDateISOstring | nullDate the job was posted, ISO 8601.
publishDateTextstring | nullPosted date exactly as Cadremploi shows it, e.g. Publiée il y a 12 jours.
isRemoteboolean | nullTrue if the job mentions remote work or télétravail.
isRepostbooleanTrue if this Actor has returned this job in an earlier run.
originalPublishDatestring | nullDate this job was first seen by the Actor (reposts only).
originalUrlstring | nullURL the job first appeared under (reposts only).
changeStatusstringNEW, UPDATED, UNCHANGED or REAPPEARED.
contentHashstringFingerprint of the job, used for change detection.
countrystringAlways FR.
sourcestringAlways cadremploi.fr.
scrapedAtstringWhen this record was collected, ISO 8601.
latitudenumber | nullLatitude of the job's city.
longitudenumber | nullLongitude of the job's city.

With fetchDetails: true

FieldTypeDescription
descriptionstring | nullFull job description as HTML.
descriptionTextstring | nullFull description as plain text.
descriptionMarkdownstring | nullFull description as Markdown, ready for an LLM.
companyUrlstring | nullCompany website.
companyDescriptionstring | nullCompany profile text, where published.
sectorstring | nullIndustry sector.
regionstring | nullFrench region.
postalCodestring | nullPostal code.
salaryMinnumber | nullMinimum salary (null when the employer does not publish one).
salaryMaxnumber | nullMaximum salary (null when the employer does not publish one).
salaryPeriodstring | nullYEAR, MONTH or HOUR.
salaryCurrencystring | nullCurrency code, normally EUR.
experienceRequiredstring | nullExperience the employer asks for.
applyUrlstring | nullDirect application link.
directApplyboolean | nullTrue if the job can be applied to on Cadremploi itself.
validThroughstring | nullDate the listing expires, ISO 8601.

Example record

{
"id": "156542608614986982",
"url": "https://www.cadremploi.fr/emploi/detail_offre?offreId=156542608614986982",
"title": "Chargé Marketing et Communication F/H",
"company": "MORGAN PHILIPS EXECUTIVE SEARCH",
"companyUrl": "https://www.morganphilips.com",
"companyDescription": "Cabinet de recrutement spécialisé dans les fonctions cadres et dirigeants.",
"location": "Paris, Ile-de-France",
"city": "Paris",
"postalCode": "75000",
"region": "Ile-de-France",
"country": "FR",
"latitude": 48.856614,
"longitude": 2.352222,
"contractType": "CDI",
"sector": "Banque - Assurance - Finance",
"snippet": "Nous accompagnons aujourd'hui une société de gestion spécialisée dans l'investissement immobilier...",
"description": "<div class=\"job-description\"><p>Nous accompagnons une société de gestion spécialisée dans l'investissement immobilier.</p></div>",
"descriptionText": "Nous accompagnons une société de gestion spécialisée dans l'investissement immobilier.",
"descriptionMarkdown": "Nous accompagnons une société de gestion spécialisée dans l'investissement immobilier.",
"salaryMin": 45000,
"salaryMax": 55000,
"salaryPeriod": "YEAR",
"salaryCurrency": "EUR",
"experienceRequired": "3 à 5 ans",
"applyUrl": "https://www.cadremploi.fr/emploi/detail_offre?offreId=156542608614986982",
"directApply": true,
"publishDateISO": "2026-06-30T19:00:49.000Z",
"validThrough": "2026-08-30T00:00:00.000Z",
"isRemote": false,
"isRepost": false,
"originalPublishDate": null,
"originalUrl": null,
"changeStatus": "NEW",
"contentHash": "a3f1c9e740b2d518",
"source": "cadremploi.fr",
"scrapedAt": "2026-07-12T18:42:11.503Z"
}

Examples

Marketing roles within 30 km of Paris:

{
"searchQuery": "responsable marketing",
"location": "Paris",
"radius": "50",
"maxItems": 200
}

Permanent IT and finance roles in Lyon:

{
"location": "Lyon",
"jobFunction": ["IT", "FINANCE"],
"contractTypes": ["CDI"],
"maxItems": 500
}

Every remote job posted in the last week:

{
"remoteOnly": true,
"daysOld": 7,
"fetchDetails": true,
"maxItems": 0
}

Daily feed of new jobs only:

{
"searchQuery": "directeur financier",
"daysOld": 1,
"skipReposts": true,
"maxItems": 0
}

Scrape a search you built on Cadremploi yourself:

{
"startUrls": [
{ "url": "https://www.cadremploi.fr/emploi/liste_offres?motscles=chef%20de%20projet&ville=nantes-44" }
],
"maxItems": 300
}

💰 Pricing

$1.49 per 1,000 results — you only pay for jobs actually returned. Failed retries and filtered reposts are never charged.

ResultsCost
100~$0.15
1,000~$1.49
10,000~$14.90
20,000~$29.80

Flat-rate alternatives typically charge $30–$100/month regardless of usage.

Subscription tiers lower the rate further, down to $0.89 per 1,000 at the highest tier. Use Maximum results to control your spend exactly.


Performance

Run sizeTypical time
100 results1–2 minutes
1,000 results10–15 minutes
10,000 results1.5–2.5 hours

Turning fetchDetails off roughly triples throughput, at the cost of the description, salary and company fields.


Known limitations

  • Salary is only returned when the employer publishes it, and it needs fetchDetails on. In a 60-job sample, 85% carried a salary.
  • Cadremploi has no remote-work filter of its own, so remoteOnly reads the text of the jobs collected. It is far more accurate with fetchDetails on, since the whole description is searched rather than just the title and preview.
  • Cadremploi supports a radius of 0, 10, 20, 50 or 100 km only, and it applies to cities. Searching a whole department or region returns that area in full.
  • On a narrow search Cadremploi pads the page with unrelated "you might also like" jobs. This Actor never collects them, so you are never charged for a job you did not search for.
  • Cadremploi's search returns at most about 22,000 jobs; very broad searches are capped by the source, not by this Actor.

Technical details

  • Source: cadremploi.fr — French executive and management job listings
  • Coverage: nationwide, filterable by city, radius, department and region
  • Repost storage: KeyValueStore cadremploi-job-dedup, 90-day TTL
  • Retry: automatic retry on network errors with exponential backoff, 3 attempts per request

Need a custom scraper?

Unfenced Group builds Apify actors for any website — for free.

If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.

Get in touch: www.unfencedgroup.nl