HelloWork FR Scraper: French Job Listings avatar

HelloWork FR Scraper: French Job Listings

Pricing

from $3.00 / 1,000 serp results

Go to Apify Store
HelloWork FR Scraper: French Job Listings

HelloWork FR Scraper: French Job Listings

Scrape job listings from HelloWork (hellowork.com), France's leading job board with 64M monthly visits. Returns title, company, location, French region and departement, contract type (CDI/CDD/Freelance/Alternance/Stage/Interim), salary, remote type (telework), experience level, and full description.

Pricing

from $3.00 / 1,000 serp results

Rating

0.0

(0)

Developer

NanoScrape

NanoScrape

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

20 days ago

Last modified

Share

Extract job listings from HelloWork (hellowork.com), France's largest generalist job board with 64 million monthly visits. Formerly known as RegionsJob, HelloWork covers CDI, CDD, Stage, Alternance, Interim, and Freelance positions across all French regions, departements, and sectors.

No login required. No captcha. HTTP-only, no browser under the hood.

What it does

Pulls live job listings from HelloWork by keyword, location, and contract type. Results include French-specific fields: departement code, administrative region, contract type in French (CDI/CDD/etc.), working time (temps plein/partiel), and remote type (teletravail integral, hybride, sur site).

Filter by:

  • Keywords: job title, skill, or profession in French (e.g. "comptable", "infirmier", "developpeur")
  • Location: French city or region (e.g. "Paris", "Lyon", "Bordeaux")
  • Contract type: CDI, CDD, Interim, Stage, Alternance, Freelance
  • Remote only: return only telework-eligible positions

Sample output

{
"_type": "job",
"id": "82639894",
"title": "Coordinateur Caisse Accueil 35H H/F",
"job_url": "https://www.hellowork.com/fr-fr/emplois/82639894.html",
"source_url": "https://www.hellowork.com/fr-fr/emplois/82639894.html",
"source_platform": "hellowork.com",
"company_name": "Lidl",
"company_website": null,
"company_logo_url": "https://f.hellowork.com/img/entreprises/199012.png",
"location": "Gardanne - 13",
"country": "FR",
"region": "Provence-Alpes-Cote d'Azur",
"departement": "13",
"posted_at_text": "25/08/2026",
"posted_at_datetime": "2026-08-25T00:00:00Z",
"employment_type": "CDI",
"contract_type_fr": "CDI",
"working_time": "temps plein",
"experience_level": null,
"remote_type": "sur site",
"salary_min": 2214,
"salary_max": 2319,
"salary_currency": "EUR",
"salary_period": "month",
"salary_text": "2 214 - 2 319 EUR / mois",
"description": "Gerer les operations de caisse et accueil client, superviser les equipes polyvalentes...",
"description_full": "Gerer les operations de caisse...\n\nMissions:\n- Superviser les equipes polyvalentes\n- Gerer les flux de caisse\n- Assurer la conformite alimentaire",
"description_html": "<p>Gerer les operations de caisse...</p>",
"description_md": "Gerer les operations de caisse...\n\n- Superviser les equipes polyvalentes\n- Gerer les flux de caisse",
"contact_emails": [],
"contact_phones": [],
"contact_urls": [],
"apply_url": null,
"search_query": "developpeur",
"scraped_at": "2026-08-25T10:30:00Z"
}

Pricing

EventPrice
Actor start$0.001
SERP result (includeJobDetails=false)$0.003 per job
Detail result (includeJobDetails=true)$0.005 per job

Typical cost: $3 per 1,000 jobs in SERP mode. Detail mode ($5/1,000) adds full HTML descriptions, salary details, and remote type.

New to Apify? Every account gets a $5 free monthly platform credit, enough for around 1,000 results before you pay anything.

Input

FieldTypeDefaultDescription
searchQueriesarray of strings-French keywords: "developpeur", "comptable", "infirmier". Each runs as a separate search.
searchUrlsarray of strings-Direct HelloWork search URLs. Wins over searchQueries.
startUrlsarray of strings-Direct job detail page URLs to scrape (e.g. https://www.hellowork.com/fr-fr/emplois/82639894.html).
locationstring-French city or region filter: "Paris", "Lyon", "Bordeaux", "Ile-de-France".
contractTypeselectanyFilter by contract type: CDI, CDD, Interim, Stage, Alternance, Freelance.
remoteOnlybooleanfalseOnly return telework-eligible positions.
includeJobDetailsbooleanfalseFetch full detail page: description_full, description_html, salary, remote_type. Charges job-detail-result.
includeCompanyDetailsbooleanfalseAlso fetch the HelloWork company page (once per unique company) and add company_* fields. Billed at the same event as the listing, no extra charge.
maxResultsinteger5Total cap across all queries (max 5000).
maxResultsPerQueryinteger5Cap per individual keyword or URL.
maxConcurrencyinteger5Parallel detail page fetches when includeJobDetails=true.

Output fields

Identity

  • id: HelloWork job ID from URL
  • title: position title
  • job_url, source_url: canonical HelloWork listing URL

Company

  • company_name: hiring company
  • company_website: company URL (when available)
  • company_logo_url: logo from HelloWork CDN
  • company_hw_url: HelloWork company page URL

Company page (requires includeCompanyDetails=true)

  • company_sector: sector label (e.g. "Recrutement - Placement - Conseils RH")
  • company_headquarters: city and departement (e.g. "Lyon - 69")
  • company_founded_year: founding year
  • company_revenue: revenue as displayed (e.g. "1,20 Milliard d'euros")
  • company_size: headcount range (e.g. "1000 à 5000 salariés")
  • company_remote_policy: telework policy
  • company_gender_parity_index: parity index out of 100
  • company_csr_label: CSR label (e.g. "EcoVadis")
  • company_social_links: social network URLs
  • company_open_jobs_count: open offers on HelloWork
  • company_website: company website, only when the company page lists one

Some companies publish only part of these facts, so every field can be null. The hiring company name is truncated by HelloWork itself for some agencies (for example "Adéquat recrute pour Adéquat..."); the actor returns it as the site shows it.

Location (France-specific)

  • location: display string (city + departement code, e.g. "Paris - 75")
  • country: always "FR"
  • region: French administrative region (Ile-de-France, Auvergne-Rhone-Alpes, etc.)
  • departement: departement number ("75", "69", "13", etc.)

Contract and schedule (France-specific)

  • contract_type_fr: French contract label (CDI, CDD, Interim, Stage, Alternance, Freelance)
  • employment_type: contract type as HelloWork shows it (CDI, CDD, Intérim, Stage, Alternance, Freelance)
  • working_time: "temps plein" or "temps partiel"
  • remote_type: "teletravail integral", "hybride", "teletravail", or "sur site"
  • experience_level: Debutant, Junior, Confirme, Senior, Expert (inferred from description)
  • contract_duration: fixed contract length when shown (e.g. "6 mois", "3 semaines"), in SERP and detail mode

Job detail (requires includeJobDetails=true)

  • occupational_category: category such as "Vente"
  • qualifications: candidate profile text, separate from the description
  • employer_type: "Agence d'intérim", "Cabinet de recrutement", "ESN", etc.
  • experience_years_min, experience_years_max: range from the "Exp." chip (max is null for "5 ans min."); months_of_experience is kept
  • job_reference: employer reference from the page footer
  • job_highlights: list from the "À noter sur ce job" block

Salary

  • salary_min, salary_max: numeric values when disclosed
  • salary_currency: always "EUR"
  • salary_period: year, month, hour, day
  • salary_text: raw salary string from page

Dates

  • posted_at_text: raw date (DD/MM/YYYY or relative, e.g. "il y a 2 jours")
  • posted_at_datetime: ISO 8601 UTC. In detail mode it is the exact timestamp from the page. In SERP mode HelloWork only shows relative labels ("il y a 2 heures", "hier"), so the value is derived from that label and is approximate.

Description (requires includeJobDetails=true)

  • description: ~500 character plain-text snippet
  • description_full: full plain text with line breaks preserved
  • description_html: raw HTML of job description
  • description_md: Markdown rendering

Contacts (requires includeJobDetails=true)

  • contact_emails: emails found in description
  • contact_phones: phone numbers found in description
  • contact_urls: external URLs found in description
  • apply_url: external application URL when present

Job aggregation

  • Job Feed - Unified job feed combining multiple French and global sources into one normalized stream

Career site scrapers

French market peers

General job boards

Questions and support

Contact us at contact@nanoscrape.com or use the actor's Issues tab.