France Travail Search Scraper avatar

France Travail Search Scraper

Pricing

from $2.99 / 1,000 job details

Go to Apify Store
France Travail Search Scraper

France Travail Search Scraper

Extract complete France Travail job, employer, address, contract, salary, qualification, and application microdata.

Pricing

from $2.99 / 1,000 job details

Rating

0.0

(0)

Developer

Jobs API

Jobs API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 hours ago

Last modified

Share

France Travail Jobs Search Scraper

This Apify Actor extracts the public France Travail jobs portal locally or on Apify. It reads server-rendered search cards and enriches each candidate from the official public detail page. Only complete, identity-verified job records are written to the dataset.

The Actor uses bounded native HTTPS requests with an ordinary French browser-compatible user agent. It does not use proxies, fingerprint spoofing, CAPTCHA solvers, login, or access-control bypasses.

Modes

  • search: search one query and optionally filter verified detail locations.
  • searchMultiple: run several bounded query/location combinations from searchQueries or queries and deduplicate by offer ID.
  • single: enrich one jobUrl or official jobId.
  • multiple: enrich jobUrls or direct detail startUrls.
  • startUrls: accept official search and detail URLs.

jobUrls, url, startUrl, keyword, keywords, maxJobs, and results_wanted remain accepted as compatibility aliases. Public application links are retained only when the detail page publishes a source-backed action; an external destination is never guessed.

Dataset

Records include the official offer ID and canonical URL, title, employer name/profile/logo, structured location, contract and work hours, salary range/currency/unit, dates, experience, skills, qualification, industry, source-backed application action, complete description HTML/text, headings, sections, bullet items, responsibilities/requirements/benefits signals, description links/images, listing context, selected source payload, HTTP receipts, coverage, and quality flags. Portable aliases include applyUrl, postedAt, and salaryText. Employer email, telephone, and individual contact names are intentionally omitted. Optional values are omitted when France Travail does not publish them.

Null values, blank strings, empty arrays/objects, duplicate IDs, incomplete detail pages, and mismatched listing/detail identities are rejected before Actor.pushData. Run health is stored in RUN_SUMMARY, RUN_DIAGNOSTICS, RUN_SKIPS, RUN_HEALTH, and RUN_METADATA; diagnostics never become dataset rows.

Local commands

npm install --no-audit --no-fund
npm test
npm run check
npx apify validate-schema
npx apify run --purge --input-file INPUT.json
npm run validate

The reproducible inputs include INPUT.json, INPUT-search-multiple.json, INPUT-single.json, INPUT-multiple.json, INPUT-start-urls.json, and INPUT-negative.json. Local runs use the Actor's local storage directory; Apify runs use their default dataset and key-value store.

Responsible use

Use the public portal in accordance with its terms and robots guidance. Requests are bounded and stop at an access boundary. If ordinary public access returns a block or timeout, the run records a structured KVS diagnostic and writes zero synthetic rows.