France Jobs Aggregator: HelloWork + APEC Scraper avatar

France Jobs Aggregator: HelloWork + APEC Scraper

Pricing

from $1.50 / 1,000 job offers

Go to Apify Store
France Jobs Aggregator: HelloWork + APEC Scraper

France Jobs Aggregator: HelloWork + APEC Scraper

Scrape French job offers from HelloWork and APEC in one run: keyword, city, department or region, contract, remote and date filters. Duplicates merged, direct employers vs agencies tagged, salaries structured, plus a list of companies hiring the most. JSON, CSV, Excel.

Pricing

from $1.50 / 1,000 job offers

Rating

0.0

(0)

Developer

French Data lab

French Data lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Get every new job offer in France from HelloWork and APEC in a single run — normalized, deduplicated and ready for Excel, Google Sheets, your CRM or your AI agent.

No more scraping each job board separately and cleaning the mess afterwards: search by keyword, city, department or region, filter by contract type, remote work and publication date, and receive one clean table where the same offer posted on several boards appears only once.

What can you do with it?

  • 🎯 Find companies that are hiring (B2B lead generation). A company that recruits is a company with budget and needs. Keep direct employers only (no recruitment agencies, no job-board re-posts) and every run also produces a ranked list of the companies hiring the most in your area and sector — perfect for recruitment agencies, staffing firms, HR software, B2B sales teams and consultants.
  • 📬 Monitor new offers daily. Schedule the Actor with Posted within: last 24 hours and get only fresh offers every morning, by email, Slack, Google Sheets, Make, Zapier or n8n.
  • 📊 Analyze the French job market. Salaries by city, contract mix, remote-friendliness, most in-demand skills for a job title — with structured salary ranges (min / max / period) instead of free text.
  • 🤖 Feed your job board, newsletter or AI assistant with a clean, deduplicated feed of French job offers.
  • 🔎 Job seekers & career coaches: one search across two major French boards, including APEC's executive (cadre) offers.

Why this Actor?

This ActorSingle-board scrapers
HelloWork + APEC in one run✅❌ one board each
Cross-board duplicate merging✅ (sources lists every board)❌
Who published it: direct employer, agency, training center or job-board re-post✅ publisherType on every offer + filter❌
Off-topic offers removed (keyword only in the description)✅ titleMustMatch❌
Location as city, postal code, department or region✅Usually board-specific codes
Structured salary (min / max / period)✅Often raw text only
Correct timestamps (UTC)✅ both boards return Paris time labeled as UTC — we fix it⚠️ often 1–2 h off
"Companies hiring" summary✅❌
Respects your max cost per run✅ stops exactly at your budgetvaries

Input

FieldDescriptionExample
queriesJob titles or keywords, one per line["comptable", "contrôleur de gestion"]
locationCity, postal code, department number or region. Empty = all of France"Lyon", "69003", "13", "Bretagne"
contractTypesCDI, CDD, Interim, Alternance, Stage, Freelance. Empty = all["CDI", "CDD"]
postedWithinany, 24h, 3d, 7d, 30d"24h"
remoteany, partial (partial or full remote), full"full"
publisherTypesemployer (direct employers), agency (recruitment firms, temp agencies), trainingCenter, jobBoard (APEC offers re-posted by other job boards). Default: all but jobBoard["employer"] for lead generation
titleMustMatchKeep only offers whose title contains your keyword (default true). Turn off for skills/tools like python or SAPtrue
sourceshellowork, apecboth
maxResultsMaximum unique offers for the whole run500
includeDetailsOpen each HelloWork offer for full description, skills, exact date, expiry date, experience, industrytrue
deduplicateMerge the same offer found on several boardstrue
{
"queries": ["développeur python", "data engineer"],
"location": "Île-de-France",
"contractTypes": ["CDI"],
"postedWithin": "7d",
"remote": "partial",
"maxResults": 500,
"includeDetails": true
}

Output

Each job offer is one dataset item:

{
"id": "hellowork:83926847",
"title": "Collaborateur Comptable H/F",
"company": "Hireos",
"location": "Rillieux-la-Pape - 69",
"city": "Rillieux-la-Pape",
"department": "69",
"postalCode": "69140",
"region": "Auvergne-Rhône-Alpes",
"contractType": "CDI",
"publisherType": "employer",
"salaryText": "34 000 - 38 000 € / an",
"salaryMin": 34000,
"salaryMax": 38000,
"salaryPeriod": "year",
"remote": null,
"publishedAt": "2026-09-30T08:54:08Z",
"publishedAtIsApproximate": false,
"validThrough": "2026-10-30T09:54:08Z",
"url": "https://www.hellowork.com/fr-fr/emplois/83926847.html",
"sources": ["hellowork"],
"otherUrls": [],
"companyUrl": "https://www.hellowork.com/fr-fr/entreprises/hireos-93414.html",
"companyLogo": "https://f.hellowork.com/img/entreprises/160_160/197419.png",
"experienceMonths": 12,
"skills": ["Bilan comptable", "Révision des comptes", "Autonomie"],
"industry": ["Secteur informatique", "ESN"],
"category": "Comptabilité",
"description": "Détail du poste\n\nVOTRE MISSION ...",
"query": "comptable",
"scrapedAt": "2026-09-30T09:17:39Z"
}
  • sources / otherUrls: when the same offer is published on both boards, you get it once, with every link.
  • remote: full, partial (when you filtered on it), possible (the offer mentions remote work) or null.
  • publishedAtIsApproximate: HelloWork search pages only show relative dates ("il y a 4 jours"); enable includeDetails to get exact timestamps.
  • descriptionSnippet, latitude, longitude: available for APEC offers.

Companies hiring (key-value store record COMPANIES)

Real example (keyword comptable, location Lyon):

[
{
"company": "Compagnie Fiduciaire",
"publisherType": "employer",
"openJobs": 4,
"titles": ["Chef de Mission Comptable H/F", "Collaborateur Comptable Confirmé H/F", "Collaborateur Comptable H/F", "Expert Comptable H/F"],
"locations": ["Caluire-et-Cuire - 69"],
"contractTypes": {"CDI": 4},
"latestPublishedAt": "2026-09-26T09:27:39Z",
"sources": ["hellowork"]
}
]

Job boards re-posting offers are never listed as hiring companies. Download it from the run's Storage → Key-value store tab.

Pricing

Pay per result: you only pay for the unique job offers you receive. Duplicates merged across boards are not charged twice. Set a maximum cost per run and the Actor stops exactly there.

Tips

  • Daily monitoring: create a Schedule (e.g. every day at 8:00) with postedWithin: "24h" and connect an integration (Google Sheets, Slack, email, webhook).
  • Maximum coverage: leave contractTypes empty and use several close keywords ("comptable", "assistant comptable", "collaborateur comptable").
  • Executive roles only: select only the apec source.
  • Internships and freelance are only published on HelloWork: APEC is skipped automatically for those contract types.

FAQ

Is it legal? This Actor only collects job offers that employers publish publicly to reach as many candidates as possible. It does not collect candidates' personal data. You are responsible for using the data in compliance with the GDPR and the boards' terms, especially if you contact companies.

Which boards are next? Welcome to the Jungle and France Travail are on the roadmap. Tell us which board you need in the Issues tab.

Something broke? Job boards change their pages from time to time. Open an issue with your run link and it will be fixed quickly.


🇫🇷 En bref

Récupérez en un seul lancement toutes les offres d'emploi HelloWork et APEC : recherche par mot-clé, ville, code postal, département ou région, filtres par contrat (CDI, CDD, intérim, alternance, stage, freelance), télétravail et date de publication. Les doublons entre sites sont fusionnés, les offres hors sujet sont écartées, chaque offre indique qui l'a publiée (employeur direct, cabinet de recrutement / intérim, centre de formation), les salaires sont structurés (min / max / période) et chaque exécution produit la liste des entreprises qui recrutent le plus — idéal pour la prospection B2B, les cabinets de recrutement et la veille du marché de l'emploi. Export JSON, CSV, Excel, Google Sheets.