Welcome to the Jungle Scraper: WTTJ Jobs, Salary, Remote, RAG
Pricing
from $0.59 / 1,000 jobs
Welcome to the Jungle Scraper: WTTJ Jobs, Salary, Remote, RAG
Welcome to the Jungle (WTTJ) jobs scraper. Search by keyword, country, city, contract type and remote policy. Get salary, company, location and experience data in English or French, as raw JSON for spreadsheets and CRMs or RAG-ready chunks for AI pipelines. No login needed.
Pricing
from $0.59 / 1,000 jobs
Rating
0.0
(0)
Developer
GetAScraper
Maintained by CommunityActor stats
0
Bookmarked
4
Total users
0
Monthly active users
4 days ago
Last modified
Categories
Share
🐒 Welcome to the Jungle Scraper: WTTJ Jobs, Salary, Remote, RAG
| Welcome to the Jungle (WTTJ) scraper for jobs, salary and remote data. Search by keyword, country, city, contract type and remote policy. Export raw JSON for spreadsheets or RAG-ready chunks for vector databases. | |||
| GLOBAL TECHNOLOGY AND REMOTE HIRING • Hacker News Hiring, GoFractional, NoFluffJobs, and Welcome to the Jungle tech roles | |||
|
Structured jobs from HN threads |
Fractional jobs, direct ATS links |
European tech jobs and salaries |
➤ You are here |
|
Welcome to the Jungle (WTTJ) jobs: salary, location, and RAG-ready data WTTJ job listings with salary ranges, remote policy, contract type, experience level and company details, in English or French. Export clean JSON or pre-chunked text for vector databases. |
|
🔀 Dual output modes Raw JSON for pipelines, RAG-ready chunks for AI agents |
🧩 Framework ready Drops into LangChain, LlamaIndex, Pinecone, or Qdrant |
🌍 Country and city filters Filter by country code, city, contract and remote policy |
🔓 No auth required No login, account or API key needed |
Scrape Welcome to the Jungle (WTTJ) job listings with two output modes: raw JSON or RAG-ready chunks. Get salary ranges, company data, locations, contract type, and remote policy, filtered by country, city, contract type and remote policy. Drop raw output into spreadsheets or pipelines. Use RAG-ready chunks directly in Qdrant, Pinecone, Weaviate, LangChain, or LlamaIndex for AI-powered job matching and resume screening. No login or API key needed.
🔍 What does Welcome to the Jungle Scraper do?
This Actor collects structured job data from Welcome to the Jungle search results. It supports two output modes:
-
Raw JSON - Full job listings with title, company, salary, locations, contract type, remote policy, summary, and sectors. Ready for spreadsheets, CRMs, or data warehouses.
-
RAG-Ready - Job descriptions tokenized into fixed-size chunks using tiktoken cl100k_base. Configurable chunk size (default 512 tokens) with overlap. Drop straight into any vector database for LLM-based job matching, resume screening, or market intelligence.
No login, no account and no API key required.
💡 Why use Welcome to the Jungle Scraper for RAG?
- Dual output modes. Raw JSON for traditional pipelines, RAG-ready chunks for AI agents and vector databases. One Actor handles both workflows.
- RAG-ready chunks. Job descriptions pre-split for LLM ingestion. No LaTeX stripping, no HTML parsing, no custom chunking logic on your side. Works with Qdrant, Pinecone, Weaviate, pgvector, and Chroma.
- Framework-ready. Raw output drops into Google Sheets, BigQuery, n8n, or any CRM. RAG chunks drop into LangChain, LlamaIndex, Haystack, or custom LLM pipelines.
- Multi-country filters. Pass several country codes in one run and compare salary ranges across markets.
- Rich job metadata. Salary ranges with currency, remote policy, contract type, experience level, education level and company size.
- No auth required. No cookies, no API key, no account.
🚀 How to use Welcome to the Jungle Scraper
|
STEP 1 Set your search Enter a query like data engineer, product manager, or sales. |
STEP 2 Choose output mode Pick raw for standard JSON or rag for chunked text. |
STEP 3 Filter and run Add country, contract type, or remote policy filters, then export. |
📥 Input
| Field | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Job title, skill, or keyword to search. |
locale | enum | No | Language index to search: en or fr. Default: en. |
countryCodes | array of strings | No | Filter by country codes (e.g., FR, GB, US). |
locations | array of strings | No | Filter by city or region (e.g., Paris, London). |
contractTypes | array of strings | No | Filter by contract type (full_time, part_time, internship, freelance, apprenticeship, vie). |
remotePolicies | array of strings | No | Filter by remote policy (full, partial, punctual, no). |
categories | array of strings | No | Filter by job category (tech, data, sales, marketing). |
includeJobDetails | boolean | No | Fetch the full candidate profile text for each listing. Default: false. |
outputMode | enum | Yes | raw for full JSON or rag for chunked text. Default: raw. |
chunkSize | integer | No | Target tokens per chunk in RAG mode. Default: 512. |
chunkOverlap | integer | No | Token overlap between chunks in RAG mode. Default: 50. |
maxItems | integer | Yes | Maximum jobs to return. Default: 100. |
proxyConfiguration | object | No | Optional proxy settings. Standard searches work without a proxy. |
📤 Output
Raw Mode Example
{"jobId": "2d4fbe25-352d-47a4-8280-bd6d4642cfb1","slug": "data-analytics-engineer-visian-xxx","title": "Data analytics engineer","contractType": "full_time","remotePolicy": "partial","publishedAt": "2026-06-04T09:39:54Z","experienceMin": 3,"educationLevel": "master","profession": {"name": "Data analyst","category": "Data"},"company": {"name": "Visian","slug": "visian","size": "50-249 employees","employeeCount": 200,"description": "Consulting et execution technique pour projets data.","sectors": ["Artificial Intelligence / Machine Learning", "IT / Digital"]},"locations": [{ "city": "Courbevoie", "country": "France", "countryCode": "FR", "region": "Ile-de-France" }],"primaryLocation": "Courbevoie, France","salary": {"hasSalary": true,"min": 42000,"max": 55000,"yearlyMinimum": 42000,"currency": "EUR","period": "yearly"},"summary": "Rejoignez Visian, une societe de conseil specialisee en innovation...","url": "https://www.welcometothejungle.com/en/jobs/data-engineer-visian-xxx","scrapedAt": "2026-06-06T10:00:00.000Z"}
RAG Mode Example
{"jobId": "2d4fbe25-352d-47a4-8280-bd6d4642cfb1","title": "Data analytics engineer","company": { "name": "Visian", "slug": "visian" },"primaryLocation": "Courbevoie, France","salary": { "hasSalary": true, "min": 42000, "max": 55000, "currency": "EUR" },"chunks": [{ "idx": 0, "text": "Job Title: Data analytics engineer\nCompany: Visian\nLocation: Courbevoie, France\n\nRejoignez Visian...", "tokens": 256 },{ "idx": 1, "text": "...SQL, Databricks, Git et Power BI...", "tokens": 128 }],"scrapedAt": "2026-06-06T10:00:00.000Z"}
RAG mode drops the summary field and replaces it with chunks. Every other field from raw mode is still present.
📊 Data Table
| Field | Type | Description |
|---|---|---|
jobId | string | WTTJ unique job identifier. |
slug | string | Job URL slug. |
title | string | Job title as posted. |
contractType | string | Contract type code (full_time, part_time, internship, freelance, apprenticeship, vie). |
remotePolicy | string | Remote work policy (full, partial, punctual, no). |
publishedAt | string | ISO date the job was published. |
experienceMin | integer | Minimum years of experience required, when disclosed. |
educationLevel | string | Minimum education level required, when disclosed. |
profession | object | Job classification: name and category. |
company | object | Employer details: name, slug, url, logo, size, employeeCount, description, sectors. |
locations | array | Location objects with city, country, countryCode, region. |
primaryLocation | string | Primary location as a formatted string. |
salary | object | Salary details: hasSalary, min, max, currency, period. |
summary | string | Short job summary. Raw mode only. |
profile | string | Candidate profile or requirements text, when includeJobDetails is enabled. |
benefits | array | Listed job benefits, when disclosed. |
url | string | Canonical job URL on welcometothejungle.com. |
chunks | array | RAG mode only: array of { idx, text, tokens } chunks replacing summary. |
scrapedAt | string | ISO timestamp of extraction. |
💰 Pricing
Pay per result. You are billed only for job listings successfully saved to your dataset. An empty run costs nothing, and there is no subscription or minimum spend. See the Actor's Pricing tab in Apify Console for the current rate.
⭐ Enjoying the WTTJ Jobs Scraper?
|
⭐ ⭐ ⭐ ⭐ ⭐ Getting job data pre-chunked for a vector database instead of writing your own tokenizer and cleanup logic? A 5-star rating takes 10 seconds and helps other recruiters and RAG pipeline builders find it. Your feedback also tells us what to build next. |
| ★ Rate this Actor on Apify |
🛠️ Tips
- Use RAG mode for AI agents. Feed chunks directly into a vector database for job matching, resume screening, or market intelligence. Compatible with LangChain, LlamaIndex, Qdrant, Pinecone, and Weaviate.
- Filter by country first. WTTJ has different job densities per market, so a country filter keeps results focused.
- Combine with salary filters. Many jobs disclose salary ranges. Filter
salary.hasSalary: truedownstream for benchmarking. - Schedule weekly for market tracking. Compare job counts and salary ranges over time to detect hiring trend shifts.
❓ FAQ, Disclaimers, and Support
Is scraping Welcome to the Jungle legal? This Actor collects publicly visible job listing data that needs no login, for research, market analysis, and recruiting intelligence. Users are responsible for ensuring their use complies with applicable laws and WTTJ's terms of service.
Why are some salary fields empty? Many jobs on WTTJ do not disclose salary. The Actor only saves salary values that the source exposes. Filter salary.hasSalary: true downstream if salary data is critical.
What is RAG mode? RAG (Retrieval-Augmented Generation) mode splits job descriptions into fixed-token chunks using tiktoken cl100k_base encoding. These chunks are ready to embed and store in a vector database for LLM-based job matching or resume screening.
How is this different from other WTTJ scrapers? Besides standard job records, it can return each job pre-split into token-sized chunks with overlap, ready to embed for AI agents and vector databases, and it is priced to stay low per job.
Support: Open an issue on the Actor's Issues tab in Apify Console for bug reports, feature requests, or custom-run quotes.
Built with Apify + Crawlee + TypeScript. Part of the actorstack portfolio.
🔗 Other actors
- NoFluffJobs Scraper: Tech Jobs & Salaries ↗ - extracts tech job listings and salaries from NoFluffJobs.
- CWJobs Scraper: UK Tech Jobs, Salaries & Geo ↗ - collects UK tech job listings, salaries, and location data.
- S1 Jobs Scraper: Scotland Jobs, Salaries & Employers ↗ - pulls Scotland job listings, salaries, and employer data.
- AllJobs Scraper: Israel Job Listings ↗ - gathers job listings from Israel's AllJobs board.
- AMS Austria Jobs Scraper: Bulk Austrian Job Leads ↗ - extracts job listings and employer contacts from Austria's AMS portal.