# Welcometothejungle Business Search Scraper (`soft_alexist/welcometothejungle-business-search-scraper`) Actor

Scrape company profiles from Welcome to the Jungle with ease. Collect business names, job counts, sectors, office locations, logos, and 15+ fields per listing — perfect for recruiters, market researchers, and HR professionals.

- **URL**: https://apify.com/soft\_alexist/welcometothejungle-business-search-scraper.md
- **Developed by:** [Soft Alexist](https://apify.com/soft_alexist) (community)
- **Categories:** Automation, Jobs, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-usage

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Welcome to the Jungle Business Search Scraper: Extract Company Data at Scale

***

### About Welcome to the Jungle

Welcome to the Jungle is a leading European job platform specializing in tech, startup, and growth-focused companies. The platform aggregates thousands of employer profiles with detailed company information, active job counts, sector classifications, and office locations across multiple countries. Manually researching and cataloging company data is tedious and error-prone — the **Welcome to the Jungle Business Search Scraper** automates this process, delivering structured company intelligence ready for analysis and integration.

***

### Overview

The **Welcome to the Jungle Business Search Scraper** extracts company profile information from Welcome to the Jungle's business search and listing pages. It transforms unstructured company listings into clean, machine-readable records ideal for:

- **Recruiters** building prospect lists and competitive intelligence databases
- **Market researchers** analyzing industry sectors and regional hiring trends
- **HR professionals** evaluating companies by size, location, and sector
- **Developers** integrating company data into recruitment platforms or CRM systems

The scraper excels at handling paginated search results, filtering by region or sector, and extracting 15+ data points per company. With configurable item limits and automatic error tolerance, it scales efficiently from single-page exports to bulk multi-page collection runs.

***

### Input Format

The scraper accepts a JSON configuration object to define the scope and behavior of your collection:

```json
{
  "urls": [
    "https://www.welcometothejungle.com/fr/companies?page=2&refinementList%5Boffices.country_code%5D%5B0%5D=FR"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 200
}
```

| Parameter | Type | Description |
|-----------|------|-------------|
| `urls` | Array | Direct links to Welcome to the Jungle company search/listing pages. Supports filtered URLs (by country, sector, size) or paginated results. |
| `ignore_url_failures` | Boolean | If `true`, the scraper continues running even if individual URLs fail. If `false`, it halts on the first error. |
| `max_items_per_url` | Integer | Maximum number of company records extracted per URL (e.g., `200`). Useful for limiting results or controlling API costs. |

**Example use cases:**

- Scrape all companies in France: `?refinementList[offices.country_code][0]=FR`
- Filter by sector: `?refinementList[sectors][0]=tech`
- Paginate through results: `?page=1`, `?page=2`, etc.

> **Tip:** To scrape multiple pages efficiently, include all page URLs in the `urls` array or adjust the pagination parameters to match your target dataset.

***

### Output Format

**Sample output**

```json
{
  "website": {
    "reference": "wttj_fr"
  },
  "name": "Finantis Holding",
  "descriptions": {
    "fr": "Finantis Holding est une entreprise d'audit, de comptabilité et de conseil basée à Paris. Depuis plus de 20 ans, nous assistons les entreprises et leurs dirigeants dans la sécurisation et la gestion de leurs informations financières. Notre offre de services est variée, allant de l'audit de durabilité, l'audit financier, l'audit interne, l'audit légal, la consolidation des comptes, le conseil, la due diligence, l'évaluation d'entreprise, l'expertise comptable, la fiscalité et l'externalisation. Nous servons un large éventail d'organisations y compris les PME, les groupes, les filiales françaises de groupes internationaux et les organisations à but non lucratif. Nos services sont reconnus pour leur qualité, leur continuité et notre compréhension des enjeux uniques de chaque client."
  },
  "reference": "vcmfAC",
  "slug": "finantis-holding",
  "jobs_count": 0,
  "sectors": [
    {
      "name": {
        "fr": "Expertise comptable",
        "en": "Accounting",
        "es": "Contabilidad",
        "cs": "Účetnictví",
        "sk": "Účtovníctva"
      },
      "parent": {
        "fr": "Conseil / Audit",
        "en": "Consulting / Audit",
        "es": "Asesoría/Auditoría",
        "cs": "Poradenství a audit",
        "sk": "Poradenstvo a audit"
      },
      "id": 178
    },
    {
      "name": {
        "fr": "Audit",
        "en": "Audit",
        "es": "Auditoría",
        "cs": "Audit",
        "sk": "Audit"
      },
      "parent": {
        "fr": "Conseil / Audit",
        "en": "Consulting / Audit",
        "es": "Asesoría/Auditoría",
        "cs": "Poradenství a audit",
        "sk": "Poradenstvo a audit"
      },
      "id": 91
    },
    {
      "name": {
        "fr": "Finance",
        "en": "Finance",
        "es": "Finanzas",
        "cs": "Finance",
        "sk": "Financie"
      },
      "parent": {
        "fr": "Banques / Assurances / Finance",
        "en": "Banking / Insurance / Finance",
        "es": "Banca/Seguros/Finanzas",
        "cs": "Bankovnictví / Pojišťovnictví / Finance",
        "sk": "Bankovníctvo / Poisťovníctvo / Financie"
      },
      "id": 175
    }
  ],
  "offices": [
    {
      "city": "Paris",
      "country": null,
      "country_code": "FR",
      "district": "Paris",
      "state": "Ile-de-France",
      "is_headquarter": true,
      "is_displayed": true
    }
  ],
  "cover_image": {
    "fr": {
      "url": "https://cdn-images.welcometothejungle.com/Q10CMhu_ge-uVoHJszbX3cqhQQ7yamm_gychQnzkVy8/w:2000/q:85/czM6Ly93dHRqLXBy/b2R1Y3Rpb24vdXBs/b2Fkcy93ZWJzaXRl/X29yZ2FuaXphdGlv/bi9jb3Zlcl9pbWFn/ZS93dHRqX2ZyL2Zy/LTBkYzdjYjY0LTli/YWItNDhmNy1hZjcx/LTIwNThkZDNhNzk4/Zi5qcGc",
      "thumb": {
        "url": "https://cdn-images.welcometothejungle.com/jKOI_nCxPrwSQo8M2JVFs1D5GYcCrjtAUdvG7F7cEWU/w:200/q:85/czM6Ly93dHRqLXBy/b2R1Y3Rpb24vdXBs/b2Fkcy93ZWJzaXRl/X29yZ2FuaXphdGlv/bi9jb3Zlcl9pbWFn/ZS93dHRqX2ZyL2Zy/LTBkYzdjYjY0LTli/YWItNDhmNy1hZjcx/LTIwNThkZDNhNzk4/Zi5qcGc"
      },
      "small": {
        "url": "https://cdn-images.welcometothejungle.com/6b5M_mbGLFlL7UmMmXz2JyRsELipRrGEkoNx7WOzAnI/w:640/q:85/czM6Ly93dHRqLXBy/b2R1Y3Rpb24vdXBs/b2Fkcy93ZWJzaXRl/X29yZ2FuaXphdGlv/bi9jb3Zlcl9pbWFn/ZS93dHRqX2ZyL2Zy/LTBkYzdjYjY0LTli/YWItNDhmNy1hZjcx/LTIwNThkZDNhNzk4/Zi5qcGc"
      },
      "medium": {
        "url": "https://cdn-images.welcometothejungle.com/BkUfxmWwy8Y1QHft4gHWfwYDHemdPI2vJGs0SpBIr5Q/w:900/q:85/czM6Ly93dHRqLXBy/b2R1Y3Rpb24vdXBs/b2Fkcy93ZWJzaXRl/X29yZ2FuaXphdGlv/bi9jb3Zlcl9pbWFn/ZS93dHRqX2ZyL2Zy/LTBkYzdjYjY0LTli/YWItNDhmNy1hZjcx/LTIwNThkZDNhNzk4/Zi5qcGc"
      },
      "large": {
        "url": "https://cdn-images.welcometothejungle.com/rkPmztpWSVfNVCDO0L85VATIHT938dfcTB7RvDcDtVo/w:1500/q:85/czM6Ly93dHRqLXBy/b2R1Y3Rpb24vdXBs/b2Fkcy93ZWJzaXRl/X29yZ2FuaXphdGlv/bi9jb3Zlcl9pbWFn/ZS93dHRqX2ZyL2Zy/LTBkYzdjYjY0LTli/YWItNDhmNy1hZjcx/LTIwNThkZDNhNzk4/Zi5qcGc"
      }
    }
  },
  "logo": {
    "url": "https://cdn-images.welcometothejungle.com/vdiYaq0Ekw-xkx3nFS0Cm_uw5A9Y2z3X-Y3-0UDjx_o/w:200/q:85/czM6Ly93dHRqLXBy/b2R1Y3Rpb24vdXBs/b2Fkcy9vcmdhbml6/YXRpb24vbG9nby81/NjQxLzE3NzU2My81/N2ZmZDg1ZC0yNTNm/LTQxZmYtODhlMC00/Nzk1NzI4ZGNjOTEu/anBn",
    "thumb": {
      "url": "https://cdn-images.welcometothejungle.com/-9iYDyGPdzHb9Ia05wMs--hYxZINg8Q1GnLPkGbpWF0/w:70/q:85/czM6Ly93dHRqLXBy/b2R1Y3Rpb24vdXBs/b2Fkcy9vcmdhbml6/YXRpb24vbG9nby81/NjQxLzE3NzU2My81/N2ZmZDg1ZC0yNTNm/LTQxZmYtODhlMC00/Nzk1NzI4ZGNjOTEu/anBn"
    }
  },
  "published_at": "2026-06-24T14:40:16.165+02:00",
  "accepts_spontaneous_application": false,
  "profile_type": "standard",
  "object_id": null,
  "highlight_result": null,
  "from_url": "https://www.welcometothejungle.com/fr/companies?page=2&refinementList%5Boffices.country_code%5D%5B0%5D=FR"
}
```

Each company record returned contains 15+ fields with rich company intelligence:

#### Identification & Metadata

| Field | Description |
|---|---|
| `Name` | Official company name as listed on Welcome to the Jungle |
| `Slug` | URL-friendly version of the company name |
| `Website` | Company's official website URL |
| `Reference` | Unique internal reference identifier for the company |
| `Object ID` | Unique database identifier for the company record |

#### Company Profile Data

| Field | Description |
|---|---|
| `Descriptions` | Company overview or tagline describing business focus and mission |
| `Profile Type` | Classification of the company (e.g., SME, Startup, Enterprise, Freelancer) |
| `Sectors` | Industries the company operates in (e.g., tech, fintech, e-commerce) |
| `Jobs Count` | Total number of active job openings posted by the company |

#### Location & Office Information

| Field | Description |
|---|---|
| `Offices` | Array of office locations with city, country, and additional metadata for each presence |

#### Visual Branding

| Field | Description |
|---|---|
| `Logo` | URL to the company's logo image (typically PNG or JPG format) |
| `Cover Image` | URL to the company's profile cover or banner image |

#### Engagement & Status

| Field | Description |
|---|---|
| `Published At` | Timestamp when the company profile was first published on Welcome to the Jungle |
| `Accepts Spontaneous Application` | Boolean flag indicating if the company accepts unsolicited applications/CVs |
| `Highlight Result` | Additional search result highlighting or ranking metadata |

***

### How to Use

1. **Identify target URLs** — Navigate to Welcome to the Jungle's companies section. Copy the URL of the search results or filtered company list (e.g., `fr/companies?page=2&refinementList...`).
2. **Configure your input** — Paste one or more URLs into the `urls` array. Adjust `max_items_per_url` based on your needs (20 for quick tests, 100+ for bulk export).
3. **Set error handling** — Use `ignore_url_failures: true` if scraping multiple pages to avoid halts from temporary failures.
4. **Run the scraper** — Start the actor and monitor progress in the run log.
5. **Download results** — Export the dataset as JSON, CSV, or Excel, or integrate directly via API.

**Best practices:**

- Use filtered URLs (by country, sector, company size) to reduce data volume and collection time.
- Set `max_items_per_url` to a realistic number based on visible results on the page.
- Test with a single URL first before running bulk multi-page scrapes.

***

### Use Cases & Business Value

- **Talent acquisition:** Build targeted prospect lists of companies actively hiring in your region or sector
- **Competitive intelligence:** Monitor hiring activity, growth, and new openings from competitor companies
- **Market research:** Analyze company distribution by sector, size, and geography to identify trends
- **CRM integration:** Enrich sales and recruitment databases with company metadata and contact intelligence
- **Recruitment analytics:** Track job count trends to identify high-growth or rapidly scaling organizations

By automating company data collection, you eliminate days of manual research and unlock insights impossible to obtain through manual browsing alone.

***

### Conclusion

The **Welcome to the Jungle Business Search Scraper** delivers fast, accurate company intelligence from one of Europe's most comprehensive job platforms. Whether building prospect lists, analyzing markets, or fueling recruitment systems, this scraper transforms search results into actionable, structured data. Start scraping today and accelerate your business intelligence workflows.

# Actor input Schema

## `urls` (type: `array`):

Add the URLs of the business list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.

## `ignore_url_failures` (type: `boolean`):

If true, the scraper will continue running even if some URLs fail to be scraped.

## `max_items_per_url` (type: `integer`):

The maximum number of items to scrape per URL.

## Actor input object example

```json
{
  "urls": [
    "https://www.welcometothejungle.com/fr/companies?page=2&refinementList%5Boffices.country_code%5D%5B0%5D=FR"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "urls": [
        "https://www.welcometothejungle.com/fr/companies?page=2&refinementList%5Boffices.country_code%5D%5B0%5D=FR"
    ],
    "ignore_url_failures": true,
    "max_items_per_url": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("soft_alexist/welcometothejungle-business-search-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "urls": ["https://www.welcometothejungle.com/fr/companies?page=2&refinementList%5Boffices.country_code%5D%5B0%5D=FR"],
    "ignore_url_failures": True,
    "max_items_per_url": 20,
}

# Run the Actor and wait for it to finish
run = client.actor("soft_alexist/welcometothejungle-business-search-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "urls": [
    "https://www.welcometothejungle.com/fr/companies?page=2&refinementList%5Boffices.country_code%5D%5B0%5D=FR"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20
}' |
apify call soft_alexist/welcometothejungle-business-search-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,soft_alexist/welcometothejungle-business-search-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/kxvYGEJCwmxt8sw2c/builds/53hE4FTv4GyR29RWu/openapi.json
