France Travail Scraper
Pricing
from $0.99 / 1,000 results
France Travail Scraper
Scrape job listings and employment data from France Travail efficiently. Requires residential proxies to bypass geo-restrictions. Ideal for recruitment, labor market analysis & job aggregation. Extract skills, salaries & company info automatically. Perfect for HR tech & career platforms.
Pricing
from $0.99 / 1,000 results
Rating
5.0
(4)
Developer
Shahid Irfan
Maintained by CommunityActor stats
5
Bookmarked
52
Total users
9
Monthly active users
16 days ago
Last modified
Categories
Share
What does France Travail Scraper do?
France Travail Scraper collects public job listings from France Travail, the French national employment agency formerly known as Pôle emploi. Search by keyword, location, and contract type, or provide a prepared France Travail search URL. The Actor returns structured job records with titles, employers, locations, contract details, salaries, descriptions, skills, experience requirements, and direct offer URLs.
Use the dataset for French labor market research, recruitment and sourcing, salary benchmarking, job board aggregation, career services, academic research, and recurring monitoring of new opportunities. Enable detail collection when you need the fullest record, or disable it for a faster listing-only dataset containing the information available in search results.
Why use France Travail Scraper?
- French job market coverage - Collect public offers from France Travail across cities, departments, regions, and employment sectors.
- Flexible search - Start with a keyword such as
développeur web, add a location such asParis, and optionally narrow the results by contract type. - Detailed job records - Capture salary information, work schedule, experience, education, skills, languages, sector, employer details, and descriptions when published.
- Fast listing-only runs - Set
collectDetailstofalsewhen you only need titles, employers, locations, dates, contract labels, and offer URLs. - Controlled collection size - Set
results_wantedandmax_pagesto control how many results the run processes. - Automation-ready output - Download JSON, CSV, Excel, or XML, schedule repeat runs, send webhooks, or read the dataset through the Apify API.
What data can you extract from France Travail?
The Actor saves one dataset item per job offer. Fields that are unavailable on the source listing are omitted by default, so records remain compact. Detail fields are normally available when collectDetails is enabled.
| Field | Type | Description |
|---|---|---|
offer_id | String | France Travail offer reference, such as 204WBLS. |
job_title | String | Published job title. |
company | String | Employer name shown with the offer. |
employer_name | String | Employer name from the detailed offer data, when available. |
location | String | Published department and city or other location text. |
postal_code | String | Postal code when published. |
address_locality | String | City or locality from the offer address. |
address_region | String | Region from the offer address. |
address_country | String | Country from the offer address. |
contract_type | String | Contract label such as CDI, CDD, or Intérim. |
employment_type | String | Employment type when provided in the detailed offer. |
work_hours | String | Working time, such as full-time or part-time. |
work_conditions | String | Working conditions published by the employer. |
travel_required | String | Travel requirements when stated. |
salary | String | Salary, range, period, or other compensation text. |
salary_currency | String | Salary currency when available. |
salary_unit | String | Salary unit, such as year, month, or hour, when available. |
date_posted | String | Publication date or date text shown by France Travail. |
valid_through | String | Closing or validity date when available. |
description_text | String | Job description in plain text. |
description_html | String | Formatted job description when available. |
experience | String | Required professional experience. |
formation | String | Required education, qualification, or training. |
skills | Array | Technical and professional competencies listed in the offer. |
soft_skills | Array | Behavioral or interpersonal skills when published. |
languages | Array | Required or preferred languages. |
qualification | String | Qualification level or job qualification label. |
sector | String | Industry or activity sector. |
contact_email | String | Employer contact email when published. |
contact_phone | String | Employer contact phone when published. |
employer_website | String | Employer website when published. |
latitude | Number | Job latitude when available. |
longitude | Number | Job longitude when available. |
url | String | Direct France Travail offer URL. |
When collectDetails is disabled, the dataset contains the listing information available from search results. Salary, full descriptions, skills, employer contacts, and other detail fields may then be absent.
How to scrape France Travail jobs
- Open France Travail Scraper in Apify Console.
- Enter a job keyword, location, and optional contract type, or paste a France Travail search URL into
startUrl. - Choose whether to collect detail-page information with
collectDetails. - Set
results_wantedandmax_pagesfor the size and scope of the run. - Start the Actor and review the dataset preview.
- Download the results or connect the dataset to a spreadsheet, webhook, API, or other workflow.
For generated searches, the Actor uses a 10-kilometer search radius around the supplied location. To reuse a search with filters already configured on France Travail, use startUrl. When startUrl is provided, it is used as the starting search and keyword, location, and contract inputs are not added to it.
Input Parameters
| Parameter | Type | Required | Default or prefill | Description |
|---|---|---|---|---|
startUrl | String | No | None | A specific public France Travail search URL. Use this when the search page already contains the filters you need. |
keyword | String | No | admin prefilled | Job title, skill, or phrase, such as développeur, comptable, or assistant administratif. |
location | String | No | None | City, department, or location filter, such as Paris, Lyon, or 75 - Paris. |
contractType | String | No | None | Contract filter, such as CDI, CDD, or Intérim. |
collectDetails | Boolean | No | true | Visit each collected offer for additional job, employer, compensation, and requirement fields. Set to false for faster listing-only collection. |
results_wanted | Integer | No | 20 | Maximum number of job records to save. Must be at least 1. |
max_pages | Integer | No | 10 | Maximum number of France Travail result pages to process. The Actor stops earlier when it reaches results_wanted or no more results are returned. |
All inputs are optional. The Apify Console pre-fills keyword with admin, while the runtime also accepts an empty keyword for a broader search. The default result limit is 20. A supplied startUrl is useful for preserving the exact search filters selected on the France Travail website.
Output Data
Each successful job offer is saved as a separate dataset item. Empty or null values are omitted by default.
| Field group | Main fields | Typical use |
|---|---|---|
| Identity | offer_id, job_title, url | Deduplication, linking, and job aggregation. |
| Employer | company, employer_name, employer_website, contact_email, contact_phone | Employer research and recruitment workflows. |
| Location | location, postal_code, address_locality, address_region, latitude, longitude | Geographic analysis and regional hiring reports. |
| Contract | contract_type, employment_type, work_hours, work_conditions, travel_required | Filtering opportunities by work arrangement. |
| Compensation | salary, salary_currency, salary_unit | Salary comparisons and market benchmarking. |
| Requirements | experience, formation, qualification, skills, soft_skills, languages | Candidate matching and skills-demand analysis. |
| Content | description_text, description_html, sector | Search, reporting, enrichment, and AI or RAG workflows. |
| Dates | date_posted, valid_through | Freshness checks and job-alert monitoring. |
Usage Examples
Basic keyword search
Collect up to 50 administrative job offers using the default 10-kilometer location radius when a location is supplied.
{"keyword": "assistant administratif","results_wanted": 50}
Search by keyword, location, and contract
Collect permanent accounting jobs near Paris.
{"keyword": "comptable","location": "Paris","contractType": "CDI","results_wanted": 100,"max_pages": 5}
Reuse a prepared France Travail search URL
Use a public search URL when you have already configured the search filters on the France Travail website.
{"startUrl": "https://candidat.francetravail.fr/offres/recherche?motsCles=admin&offresPartenaires=true&rayon=10&tri=0","results_wanted": 30,"max_pages": 3}
Fast listing-only collection
Collect a larger set of nursing listings without expanding each offer for detailed fields.
{"keyword": "infirmier","location": "Lyon","collectDetails": false,"results_wanted": 200,"max_pages": 10}
Sample Output
The following example shows one detailed dataset item. Optional fields are present only when France Travail publishes the corresponding information.
{"offer_id": "204WBLS","job_title": "Secrétaire administratif et financier (H/F)","company": "SOCIETE D'APPLICATION DES GAZ POUR L'IND","employer_name": "SOCIETE D'APPLICATION DES GAZ POUR L'IND","location": "42 - ST ETIENNE","postal_code": "42000","address_locality": "Saint-Étienne","address_region": "Auvergne-Rhône-Alpes","address_country": "France","contract_type": "CDI","employment_type": "CDI","work_hours": "Temps plein","work_conditions": "Travail en journée","salary": "Annuel de 28000.00 Euros à 33000.00 Euros sur 12 mois","salary_currency": "EUR","salary_unit": "YEAR","date_posted": "03 mars 2026","description_text": "OBJET DU POSTE - Accueil - Administration générale - Réaliser et suivre les commandes fournisseurs...","experience": "3 An(s)","formation": "Bac+2 ou équivalents Secrétariat assistanat gestion PME PMI","skills": ["Maîtrise d'Excel","Notions comptables","Classer des documents","Gestion administrative du courrier"],"soft_skills": ["Autonomie","Organisation"],"languages": ["Anglais"],"qualification": "Employé qualifié","sector": "Fabrication d'autres machines d'usage général","latitude": 45.418831,"longitude": 4.420513,"url": "https://candidat.francetravail.fr/offres/recherche/detail/204WBLS"}
Tips for best results
- Start with a focused query - Test one role and a small
results_wantedvalue before collecting a larger dataset. - Use French job terms - France Travail listings are primarily in French, so try variations such as
développeur logiciel,assistant de direction, ortechnicien maintenance. - Add a location for regional research - A city or department helps narrow the result set. Generated searches use a 10-kilometer radius.
- Use the contract filter carefully - Enter the contract label used by France Travail, such as
CDI,CDD, orIntérim. - Enable detail collection for enrichment -
collectDetails: trueis the default and is appropriate when you need salary, requirements, skills, and descriptions. - Disable details for rapid discovery - Use
collectDetails: falsewhen titles, locations, dates, and offer URLs are enough. - Balance limits and pages - Increase
max_pageswhen requesting many results, but keep it close to the expected result volume for shorter runs. - Review optional fields - Employers do not publish salary, contact details, education, or every requirement on every offer.
- Check recurring runs - Job offers can be added, updated, or removed. Review scheduled datasets and report source changes through the Actor Issues tab.
Integrations and export formats
- Google Sheets - Export job records for sorting, review, and team collaboration.
- Airtable - Create a searchable database of French job offers and employers.
- Webhooks - Notify another service when a run finishes or new results are available.
- Make or Zapier - Send matching offers to alerts, email, spreadsheets, or internal workflows.
- Apify API - Start runs and retrieve dataset items from your own application.
- JSON - Use structured records in applications, data pipelines, and AI workflows.
- CSV - Analyze results in spreadsheet software or import them into databases.
- Excel - Prepare hiring reports and salary comparisons.
- XML - Exchange structured records with compatible systems.
Frequently Asked Questions
Can I search France Travail by keyword and location?
Yes. Set keyword and location to create a search from the Actor inputs. The generated search uses a 10-kilometer radius around the location.
Can I use a France Travail search URL?
Yes. Set startUrl to a public France Travail search URL. This is useful when you want to preserve filters configured on the website. When it is provided, the URL is used as the search source instead of the generated keyword, location, and contract query.
Does the Actor collect full job descriptions?
Yes, when collectDetails is enabled and the source offer publishes a description. The dataset includes plain text and, when available, formatted HTML. Set collectDetails to false when you only need search-result information.
How many job offers can I collect?
The Actor collects up to the positive number set in results_wanted, subject to the matching offers available and the max_pages limit. Results are deduplicated by France Travail offer ID during a run.
Why are salary, contact, or skills fields missing?
Those fields are missing when France Travail or the employer does not publish them, or when detail collection is disabled. Empty values are omitted from the dataset by default.
Does the output include French and English fields?
The field names are in English, while many source values, descriptions, contract labels, and qualifications are in French because they come from France Travail listings.
Can I run the Actor on a schedule?
Yes. Create an Apify schedule to run it hourly, daily, weekly, or at another interval, then connect the dataset to a webhook, spreadsheet, API, or reporting workflow.
Can I export France Travail data to CSV or Excel?
Yes. Apify datasets can be downloaded as CSV, Excel, JSON, XML, and other supported formats.
Is collecting France Travail job data legal?
Public job data collection may be lawful in some situations, but the rules depend on your jurisdiction and use case. You are responsible for complying with France Travail's terms, applicable privacy and data-protection requirements, access restrictions, and any laws that apply to your workflow.
Related Actors
- APEC Jobs Scraper - Collect French executive and professional job listings for recruitment and labor market research.
- USA Jobs Scraper - Extract U.S. federal job listings with agency, salary, application, and description data.
- LinkedIn Job Scraper - Collect structured LinkedIn job listings for hiring research and job market analysis.
- Xing Jobs Scraper - Gather professional job listings for recruitment workflows in the DACH region.
Support
For issues, feature requests, or source changes, use the Issues tab on the Actor page or contact the developer through Apify.
Legal Notice
This Actor is designed for legitimate collection of publicly available France Travail job information. Users are responsible for using the data responsibly, complying with France Travail's terms and applicable laws, and respecting privacy, access, and data-retention requirements.