HelloWork Jobs Scraper
Pricing
from $1.00 / 1,000 job listings
HelloWork Jobs Scraper
Scrape HelloWork job listings across France — titles, companies, salaries, skills, locations, contract types, and descriptions. Filter by keyword, location, or category. Export as JSON, CSV, Excel.
Pricing
from $1.00 / 1,000 job listings
Rating
0.0
(0)
Developer
ParseBird
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
HelloWork Jobs Scraper
Scrape HelloWork job listings across France. Extract job titles, companies, salaries, skills, qualifications, locations, contract types, and full descriptions. Filter by keyword, location, or category. Export as JSON, CSV, or Excel.
| Extract structured job data from Hellowork.com — search by keyword, location, and category, collect salary ranges, skills, education requirements, benefits, and 30+ data fields ready for analysis, monitoring, or integration. |
Copy to your AI assistant
Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.
Apify Actor: parsebird/hellowork-jobs-scraper — scrapes HelloWork job listings from Hellowork.com. Pricing: $1.00/1000 listings (collectDetails off), $2.00/1000 with full details (collectDetails on). Call via ApifyClient: client.actor("parsebird/hellowork-jobs-scraper").call(run_input={"keyword": "software engineer", "location": "Paris", "results_wanted": 20}). Inputs: startUrl (string, direct HelloWork search URL), keyword (string, job keyword/title/skill), location (string, city/region), category (string), collectDetails (boolean, default true — visit detail pages for rich data), results_wanted (integer, default 20), max_pages (integer, default 20). Output: dataset with title, company, company_url, company_logo, location, city, postal_code, region, country, salary, salary_min, salary_max, salary_currency, salary_period, contract_type, employment_type_raw, work_setting, date_posted, valid_through, skills, qualifications, education, experience, benefits, industry, description_html, description_text, job_id, url, list_page_url, _source. API docs: https://docs.apify.com/api/v2 Token: https://console.apify.com/settings/integrations
What is HelloWork Jobs Scraper?
HelloWork Jobs Scraper is an Apify Actor that extracts job listings from HelloWork — one of the largest job portals in France, aggregating hundreds of thousands of job offers across all industries, regions, and contract types. It scrapes structured data from search result pages and individual job detail pages, including titles, companies, salaries, skills, qualifications, education requirements, benefits, and full descriptions.
Think of it as a HelloWork API alternative — no official public API exists for extracting job data at scale, but this scraper delivers clean, structured job records. It's built for recruitment analytics, salary benchmarking, labor market research, and lead generation across the French job market.
What data can you extract from HelloWork?
| Field | Description |
|---|---|
title | Job title (e.g., "Développeur Full Stack", "Software Engineer H/F") |
company | Employer name |
company_url | Company website or profile URL |
company_logo | Company logo URL |
location | Combined location text (e.g., "Paris, 75000, Ile-de-France, France") |
city | City or locality |
postal_code | Postal code |
region | Region or department |
country | Country |
salary | Human-readable salary text (e.g., "70000 - 90000 EUR / YEAR") |
salary_min | Minimum salary value |
salary_max | Maximum salary value |
salary_currency | Salary currency (e.g., "EUR") |
salary_period | Salary period — YEAR, MONTH, DAY |
contract_type | Normalized contract type (CDI, CDD, Freelance, etc.) |
employment_type_raw | Raw employment type values from the listing |
work_setting | Work setting — remote, hybrid, or on-site |
date_posted | Published date (ISO format) |
valid_through | Listing expiration date |
skills | Skills listed in the job offer |
qualifications | Qualification requirements |
education | Education requirement |
experience | Experience requirement |
benefits | Job benefits |
industry | Industry label |
description_html | Full description content (HTML) |
description_text | Plain text description |
job_id | Unique HelloWork job identifier |
url | Canonical job URL on Hellowork.com |
list_page_url | Search page where the job was discovered |
_source | Extraction source — json-ld (detail page) or listing (search page only) |
How to scrape HelloWork
- Go to HelloWork Jobs Scraper on Apify Store and click Try for free
- Set your search — Enter a keyword (e.g., "software engineer"), location (e.g., "Paris"), or paste a direct HelloWork search URL
- Choose detail collection — Keep
Collect Job Detailsenabled for rich data (salary ranges, skills, descriptions), or disable it for fast list-only scraping - Set the result limit — Start with 20 for a quick test, increase to 100–500 for larger datasets
- Run the scraper — Click Start and wait for results
- Export your data — Download as JSON, CSV, or Excel, or access via the Apify API
Input parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
startUrl | string | No | — | Start from a specific HelloWork search URL. Overrides keyword/location/category. |
keyword | string | No | — | Job keyword, title, or skill phrase (e.g., "software engineer", "développeur web") |
location | string | No | — | Location filter — city, region, or country (e.g., "Paris", "Lyon", "Nantes") |
category | string | No | — | Additional category or autocomplete filter value |
collectDetails | boolean | No | true | Visit each job's detail page for extended data (salary, skills, descriptions) |
results_wanted | integer | No | 20 | Maximum number of job records to save |
max_pages | integer | No | 20 | Maximum search result pages to scan |
proxyConfiguration | object | No | None | Proxy settings — enable Apify Proxy for larger runs or if you experience blocking |
Output example
{"title": "Senior Software Engineer H/F","company": "MOBISKILL","company_url": "https://www.mobiskill.fr","location": "Paris, 75000, Ile-de-France, France","city": "Paris","postal_code": "75000","region": "Ile-de-France","country": "France","salary": "70000 - 90000 EUR / YEAR","salary_min": 70000,"salary_max": 90000,"salary_currency": "EUR","salary_period": "YEAR","contract_type": "CDI","date_posted": "2026-04-19","skills": "Node.js, TypeScript, AWS","description_text": "You will design, build, and scale backend services for high-growth products...","job_id": "78174679","url": "https://www.hellowork.com/fr-fr/emplois/78174679.html","list_page_url": "https://www.hellowork.com/fr-fr/emploi/recherche.html?k=software+engineer&l=Paris","_source": "json-ld"}
Download results in JSON, CSV, Excel, or access via the Apify API.
Use cases
- 📊 Recruitment intelligence — Build fresh hiring datasets by role, region, and contract type across France
- 💰 Salary benchmarking — Compare salary ranges for positions across Paris, Lyon, Marseille, and other French cities
- 🎯 Sales prospecting — Discover companies actively hiring and enrich outreach lists with job context
- 📈 Labor market research — Analyze skills demand, contract type distribution, and role density for market reports
- 🏢 Competitive hiring analysis — Monitor job activity from target companies and sectors in France
- 🤖 Training data collection — Build datasets of French job listings for NLP, resume matching, or recommendation systems
- 📅 Job market monitoring — Schedule regular runs with Apify Schedules to track hiring trends
- 🔌 Pipeline integration — Feed job data into Google Sheets, Slack, Zapier, Make, or custom systems via Apify Integrations
Tips for best results
Start with focused queries
- Use precise role names before broad keywords
- Pair
keywordwithlocationfor cleaner relevance - Increase
results_wantedafter validating a small sample - French keywords generally provide the strongest coverage on HelloWork
Balance depth and speed
- Set
collectDetailstotruefor complete datasets with salary ranges, skills, and descriptions - Set
collectDetailstofalsefor fast link/list monitoring - Use lower
max_pageswhen running high-frequency schedules
Improve run stability
- Enable proxy configuration on larger runs or if you experience blocking
- Retry with alternative keywords if the first query is too narrow
- Schedule periodic runs to keep trend tracking fresh
How to use via API — Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("parsebird/hellowork-jobs-scraper").call(run_input={"keyword": "software engineer","location": "Paris","results_wanted": 100,"max_pages": 10,"collectDetails": True,})for job in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{job['title']} at {job.get('company', 'N/A')} — {job.get('location', '')} — {job.get('salary', 'N/A')}")
How to use via API — JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('parsebird/hellowork-jobs-scraper').call({keyword: 'software engineer',location: 'Paris',results_wanted: 100,max_pages: 10,collectDetails: true,});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(job => {console.log(`${job.title} at ${job.company || 'N/A'} — ${job.location || ''} — ${job.salary || 'N/A'}`);});
How much does it cost to scrape HelloWork?
HelloWork Jobs Scraper uses pay-per-event pricing. The price depends on whether you collect full job details or listing data only.
How much does it cost to scrape 1,000 HelloWork jobs with full details?
$2.00. Each job with detail page data (salary ranges, skills, qualifications, descriptions) costs $0.002. New users get a free trial with $5 of platform credit — enough for approximately 2,500 detailed job listings.
How much does it cost to scrape 1,000 HelloWork job listings?
$1.00. Each listing-only result (title, company, location, contract type) costs $0.001. With the free trial, that covers approximately 5,000 listings.
Pricing
| Event | When | Price per event | Price per 1,000 |
|---|---|---|---|
| Job Listing | collectDetails off | $0.001 | $1.00 |
| Job Detail | collectDetails on | $0.002 | $2.00 |
Each job pushed to the dataset counts as one event. The event type depends on whether detail collection is enabled.
Typical costs:
- 20 jobs with details (quick test): ~$0.04
- 100 listings only (fast scan): ~$0.10
- 500 jobs with details (multi-page run): ~$1.00
- 1,000 jobs with details (large dataset): ~$2.00
Is it legal to scrape HelloWork?
This Actor extracts publicly available data from HelloWork — the same job listing data any browser user can see on the search results and job detail pages. No login or authentication is used. The scraper accesses only publicly visible job postings.
Web scraping of publicly available data is generally legal in the United States and the European Union, as established by the hiQ Labs v. LinkedIn ruling. For more information, see Apify's guide on the legality of web scraping.
Users are responsible for ensuring their use of extracted data complies with applicable laws and HelloWork's Terms of Service in their jurisdiction.
Related Actors
Looking for more job scraping and data extraction tools? Check out these ParseBird actors:
- Bayt Jobs Scraper — Scrape job listings from Bayt.com across the Middle East, UAE, Saudi Arabia, and 30+ countries
- Y Combinator Jobs Scraper — Extract startup job listings from Y Combinator's jobs board with salary, equity, and visa data
- Hiring.cafe Scraper — Scrape job listings from Hiring.cafe with 20+ filters
- RozeePk Jobs Scraper — Scrape job listings from Rozee.pk, Pakistan's largest job portal
Browse all ParseBird actors on Apify Store.
FAQ
What URL formats does the scraper support?
Any HelloWork search results page. You can paste a URL from hellowork.com directly into the startUrl field, or use the keyword/location filters to build a search.
Can I search in French? Yes. French keywords generally provide the strongest coverage on HelloWork. Use terms like "développeur web", "ingénieur logiciel", or "chef de projet" for best results.
What is the difference between collectDetails on and off?
When enabled (default), the scraper visits each job's detail page to extract rich data from Schema.org JSON-LD — salary ranges, skills, qualifications, education, experience, benefits, and full descriptions. When disabled, the scraper only collects basic listing data (title, company, location, contract type) from search result pages, which is faster.
Why are some fields empty?
Not all employers provide complete metadata. Salary, skills, education, and experience availability varies by listing. The _source field indicates whether data was extracted from the detail page (json-ld) or listing page only (listing).
How do I speed up test runs?
Use results_wanted: 20, keep max_pages low (1–3), and set collectDetails to false for the fastest results.
Can I schedule recurring runs? Yes. Use Apify Schedules to run daily, weekly, or at any interval. Monitor new job postings by comparing datasets between runs.
Can I access the data via API? Yes. Use the Apify API or the official Python and JavaScript client libraries to run the scraper and retrieve results programmatically.
What export formats are supported? JSON, CSV, Excel (XLSX), XML, HTML, and RSS. Download directly from the Apify Console or via the API.
Is there a free trial? Yes. New Apify users get $5 of free platform credit — enough for approximately 2,500 jobs with full details or 5,000 listing-only results.
I found an issue or have a feature request. Open an issue on the Issues tab or contact ParseBird via the Apify Console.