# Pappers Email Scraper (`email_scraper/pappers-email-scraper`) Actor

Pappers Email Scraper extracts publicly indexed email addresses from Pappers using targeted keywords, location filters, custom email domains, and exclusion terms. Build structured contact datasets for business research, lead discovery, and contact analysis.

- **URL**: https://apify.com/email\_scraper/pappers-email-scraper.md
- **Developed by:** [Email Scraper](https://apify.com/email_scraper) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.49 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### Pappers Email Scraper

Pappers Email Scraper extracts publicly indexed email addresses associated with Pappers search results using targeted keywords and configurable email-domain filters. It is designed for users who need structured contact data from Pappers for business research, lead discovery, market research, and dataset creation.

You provide one or more search keywords, optionally add a country, state, or city, choose the email domains to look for, and optionally exclude results containing specific words or phrases. The Actor then returns structured records containing the keyword, result title, description, URL, and extracted email address.

For better coverage, use several specific search terms instead of relying on one broad keyword. For example, searches such as `Dirigeant`, `CEO`, `Gérant`, or `PME` can target different types of business-related results.

### What Is a Pappers Email Scraper?

A Pappers Email Scraper is a data extraction tool focused on finding email addresses appearing in publicly indexed Pappers search-result content.

This Actor is useful when manually searching many Pappers results would be repetitive. Instead of processing individual search results one at a time, you can provide multiple keyword and email-domain combinations and receive the matching information in a structured Apify dataset.

The Actor focuses on five user-facing output fields:

- `keyword` — the search term used for the result
- `title` — the title associated with the indexed result
- `description` — the available result description or snippet
- `url` — the result URL
- `email` — the extracted email address

Results are added to the dataset during the run, making the collected contact information available as structured records.

### Key Features

| Feature                      | Description                                                                    | User Benefit                                     |
| ---------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------ |
| Keyword-based search         | Search Pappers using one or multiple keywords                                  | Target specific business or professional terms   |
| Multiple keywords            | Accept a list of search terms                                                  | Cover several search intents in one run          |
| Location filtering           | Optionally specify a country, state, or city                                   | Narrow searches geographically                   |
| Custom email domains         | Configure email-domain suffixes such as `@gmail.com`                           | Focus collection on desired email types          |
| Exclude words                | Skip descriptions containing selected words or phrases                         | Reduce unwanted results                          |
| Per-combination email target | Configure the maximum number of emails for each keyword and domain combination | Control collection depth                         |
| Duplicate prevention         | Previously collected email addresses are not returned again during the run     | Keep the resulting dataset cleaner               |
| Structured dataset output    | Results are stored as structured records                                       | Make collected data easier to review and analyze |

### What Data Can You Extract?

Pappers Email Scraper returns contact-oriented information from matching indexed results.

The main data categories are:

- **Search context:** The keyword responsible for finding the result.
- **Result title:** The title associated with the indexed Pappers result.
- **Description:** The available search-result description or snippet containing contextual information.
- **Result URL:** The URL associated with the indexed result.
- **Email address:** An email address matching one of the configured domain suffixes.

The Actor does not promise that every Pappers profile will contain an email address. Results depend on what information is publicly indexed and available for the selected search terms and email domains.

### Why Use This Actor?

Searching for business contact information manually can involve repetitive keyword searches and reviewing many individual results. Pappers Email Scraper provides a configurable workflow for collecting matching email addresses from publicly indexed Pappers results.

It can be particularly useful when you want to:

- Search several business-related keywords in one run.
- Target specific geographic areas.
- Focus on selected email-domain suffixes.
- Exclude descriptions containing unwanted terms.
- Create a structured contact dataset.
- Reduce repetitive manual search work.
- Prepare data for further research or analysis.

The Actor is designed around configurable search intent rather than a fixed list of business categories, allowing users to adapt the same workflow to different research objectives.

### Benefits

#### Automated Contact Discovery

Instead of manually reviewing search results for every keyword, you can provide multiple terms and let the Actor process the configured combinations.

#### Structured Results

Every collected record follows a consistent structure containing the search keyword, title, description, URL, and email. This makes the resulting dataset easier to inspect and analyze.

#### Flexible Search Targeting

The `keywords` field supports multiple search terms. Specific terms can be combined to cover different business roles, company types, or research categories.

#### Geographic Refinement

The optional `location` field lets you narrow searches by entering a country, state, city, or other geographic term.

#### Email-Domain Filtering

The `customDomains` setting lets you specify which email-domain suffixes should be searched for, such as `@gmail.com`, `@yahoo.com`, or another domain suffix.

#### Result Filtering

The `excludeWords` option can prevent records from being collected when the available description contains an unwanted word or phrase.

### How to Use the Pappers Email Scraper

A typical workflow is simple:

1. Add one or more search keywords.
2. Optionally specify a location.
3. Add the email domains you want to target.
4. Set the maximum email target for each keyword and domain combination.
5. Optionally add exclusion words or phrases.
6. Start the Actor.
7. Review the resulting structured dataset.

For initial testing, start with a small number of keywords and a modest email target. Once the results match your research requirements, you can expand the search configuration.

### Input

Pappers Email Scraper requires the `keywords` field. The other fields are optional and can be used to refine the search.

| Field           | Type             | Required | Default                | Description                                                                            |
| --------------- | ---------------- | -------- | ---------------------- | -------------------------------------------------------------------------------------- |
| `keywords`      | Array of strings | Yes      | `["dirigeant", "PME"]` | Keywords or search queries used to find relevant Pappers results                       |
| `location`      | String           | No       | `""`                   | Optional country, state, or city used to narrow the search                             |
| `customDomains` | Array of strings | No       | `["@gmail.com"]`       | Email-domain suffixes to search for                                                    |
| `maxEmails`     | Integer          | No       | `5`                    | Maximum email target for each keyword + domain combination; accepted range is 1–10,000 |
| `excludeWords`  | Array of strings | No       | `[]`                   | Words or phrases that cause matching result descriptions to be skipped                 |

#### Keywords

Use multiple specific search terms when you want broader coverage. For example:

- `dirigeant`
- `PME`
- `CEO`
- `gérant`
- `entrepreneur`

Specific searches can be more useful than relying on one broad term.

#### Location

Leave `location` empty when no geographic filter is needed. Otherwise, enter a country, state, city, or other geographic term.

Examples include:

- `France`
- `Paris`
- `Lyon`
- `Île-de-France`

#### Custom Email Domains

`customDomains` accepts a list of email-domain suffixes. The default is:

`["@gmail.com"]`

You can provide additional suffixes such as:

- `@gmail.com`
- `@yahoo.com`
- `@outlook.com`
- `@hotmail.com`
- A relevant company-domain suffix

#### Maximum Emails

`maxEmails` accepts an integer from `1` to `10000`, with a default of `5`.

The target is applied for each keyword and email-domain combination. For example, using two keywords and two domains creates four configured combinations, each with its own target.

The requested amount is a target rather than a guarantee. The Actor can only return emails that are available in matching indexed results.

#### Exclude Words

Use `excludeWords` to skip result descriptions containing unwanted terms.

Single words are matched case-insensitively as whole words. Multi-word phrases are matched case-insensitively as phrases.

For example:

```json
{
  "excludeWords": [
    "crypto",
    "onlyfans"
  ]
}
```

### Input Example

```json
{
  "keywords": [
    "dirigeant",
    "PME",
    "gérant"
  ],
  "location": "France",
  "customDomains": [
    "@gmail.com",
    "@yahoo.com",
    "@outlook.com"
  ],
  "maxEmails": 10,
  "excludeWords": [
    "crypto",
    "onlyfans"
  ]
}
```

### Output

The Actor produces structured dataset records containing the information associated with each collected email.

| Field         | Description                                                                          |
| ------------- | ------------------------------------------------------------------------------------ |
| `keyword`     | The keyword used for the search that produced the matching result                    |
| `title`       | Title of the indexed search result                                                   |
| `description` | Description or snippet associated with the result                                    |
| `url`         | URL of the indexed result                                                            |
| `email`       | Email address extracted from the result description that matches a configured domain |

Each unique email is tracked so that the same email address is not returned repeatedly during the run.

### Output Example

```json
{
  "keyword": "dirigeant",
  "title": "Example Company - Pappers",
  "description": "Example Company, business information and contact details. contact@example.com",
  "url": "https://www.pappers.fr/entreprise/example-company",
  "email": "contact@example.com"
}
```

The example above is illustrative. Actual titles, descriptions, URLs, and email addresses depend on the publicly indexed results returned for the selected search configuration.

### Use Cases

Pappers Email Scraper can support several research and data-collection workflows.

- **Business lead research:** Search business-oriented keywords and collect matching publicly indexed email addresses.
- **Company research:** Build datasets around company-related search terms.
- **Market research:** Explore contact information associated with specific business categories or professional roles.
- **Geographic research:** Combine business keywords with cities, regions, or countries.
- **B2B research:** Use company roles, business terms, and relevant domain suffixes to identify potential contact records.
- **Dataset creation:** Build structured datasets for later review and analysis.
- **Competitive research:** Collect publicly indexed contact information around selected business segments.
- **Contact discovery:** Search for publicly indexed email addresses matching specific keyword combinations.

Results should be reviewed and validated according to the requirements of your intended workflow and applicable laws or platform policies.

### Competitive Advantages

The Actor provides several practical configuration options without requiring users to define complicated technical parameters.

Its main strengths include:

- Multiple keyword support.
- Optional geographic targeting.
- Configurable email-domain suffixes.
- Per-keyword and per-domain collection targets.
- Exclusion filtering.
- Structured output with consistent fields.
- Duplicate email prevention.
- Incremental dataset collection.

These capabilities allow the same Actor to support both focused searches and broader research configurations.

### Advantages

Pappers Email Scraper is useful when the goal is to turn targeted search terms into structured email-oriented records.

Key advantages include:

- **Flexible targeting:** Use several keywords instead of one fixed search category.
- **Search refinement:** Add location information when geographic targeting matters.
- **Domain control:** Select the email suffixes relevant to your research.
- **Content filtering:** Exclude descriptions containing unwanted words or phrases.
- **Structured data:** Receive consistent fields for every collected record.
- **Scalable configuration:** Adjust the number of keywords, domains, and email targets according to the scope of the task.

### Limitations

A few limitations are important to understand before running large searches.

- The Actor depends on publicly indexed information, so it cannot guarantee that every Pappers profile has an email address.
- Search coverage depends on the keywords, domains, and optional location supplied by the user.
- `maxEmails` is a collection target, not a guarantee that the requested number of addresses will be found.
- Duplicate email addresses are not returned repeatedly during the same run.
- Exclusion terms can intentionally remove otherwise matching results when their configured words or phrases appear in the result description.
- Very narrow search terms may produce fewer results.
- Broad runs may require more processing time than small, focused searches.
- Search results and publicly indexed information can change over time.

### Pros and Cons

| Pros                          | Cons                                              |
| ----------------------------- | ------------------------------------------------- |
| Multiple keyword searches     | Results depend on publicly indexed information    |
| Optional location targeting   | Narrow searches may return few emails             |
| Custom email-domain filtering | Requested email counts are not guaranteed         |
| Exclusion word filtering      | Exclusions can remove otherwise relevant snippets |
| Structured five-field output  | Result information can vary by indexed source     |
| Duplicate email prevention    | Large searches can require more processing time   |

### Comparison With Alternative Approaches

| Capability                   | Pappers Email Scraper | Manual Search                      |
| ---------------------------- | --------------------- | ---------------------------------- |
| Multiple keyword processing  | Supported             | Usually requires repeated searches |
| Email-domain targeting       | Supported             | Must be handled manually           |
| Location refinement          | Supported             | Must be added manually to searches |
| Exclusion filtering          | Supported             | Manual review is required          |
| Structured dataset           | Supported             | Requires manual organization       |
| Duplicate email prevention   | Supported             | Requires manual checking           |
| Per-combination email target | Supported             | Requires manual tracking           |

The main difference is workflow automation. Manual research can provide direct control over each result, while this Actor is designed to process configured searches and organize matching information into a structured dataset.

### Best Practices

For better research coverage and cleaner results:

- Use several specific keywords instead of one overly broad term.
- Combine professional roles, business types, or company-related terms where appropriate.
- Start with a small test run before expanding the configuration.
- Use `location` when geographic relevance matters.
- Leave `location` empty when broader coverage is preferred.
- Select email domains that match your research objective.
- Use `excludeWords` when certain categories of results should be omitted.
- Keep `maxEmails` realistic for the amount of publicly indexed information available.
- Review collected descriptions and URLs before using the data downstream.
- Validate important contact information before relying on it for business decisions.

### Troubleshooting

**Few or no results:** Try broader or additional keywords. A very narrow combination may have limited publicly indexed coverage.

**Not enough emails:** Add related keywords or additional email-domain suffixes. You can also remove an unnecessarily restrictive location filter.

**Unexpectedly missing results:** Check whether an exclusion word or phrase appears in the result description. Matching descriptions are intentionally skipped when they contain configured exclusions.

**Invalid input:** Confirm that `keywords`, `customDomains`, and `excludeWords` are arrays of strings and that `maxEmails` is an integer between 1 and 10,000.

**Partial results:** Public indexing can vary, and not every search result contains a matching email address. The requested target should therefore be treated as a maximum target rather than a guaranteed result count.

**Long-running searches:** Large combinations of keywords and email domains naturally require more processing than small test runs. Consider testing a smaller configuration first.

### Frequently Asked Questions

**What does Pappers Email Scraper do?**

Pappers Email Scraper searches for publicly indexed Pappers results using your keywords and configured email-domain suffixes, then returns matching email addresses with associated result information.

**What data does the Pappers Email Scraper return?**

Each result contains `keyword`, `title`, `description`, `url`, and `email`.

**Can I use multiple keywords?**

Yes. The `keywords` field accepts an array of search terms. Using several specific terms can expand the search coverage.

**Can I target a specific city or country?**

Yes. Use the optional `location` field to add a geographic search term such as a country, city, or region.

**Can I search for different email domains?**

Yes. The `customDomains` field accepts multiple email-domain suffixes. The default is `@gmail.com`.

**What does `maxEmails` control?**

It defines the maximum email target for each keyword and email-domain combination. It accepts values from 1 through 10,000.

**Are the requested emails guaranteed to be found?**

No. `maxEmails` defines a target, but the Actor can only collect email addresses available in matching publicly indexed results.

**How does the exclude-word filter work?**

If a result description contains a configured exclusion word or phrase, that result is skipped. Single words use case-insensitive whole-word matching, while phrases use case-insensitive phrase matching.

**Does the Actor return duplicate email addresses?**

The Actor tracks collected email addresses and skips addresses that have already been collected during the run.

**What should I do if the results are too limited?**

Try adding more specific related keywords, adding relevant email domains, or broadening or removing the location filter.

### NLP Keywords

- Pappers email scraper
- Pappers email extraction
- Pappers contact data
- Pappers business contacts
- Pappers email addresses
- Pappers data extraction
- Pappers lead discovery
- Pappers business research
- Pappers contact scraper
- Pappers company data
- Pappers search scraper
- Pappers contact extraction
- Pappers lead generation
- Pappers public data
- Pappers business information
- Pappers email finder
- Pappers company contacts
- Pappers structured data
- Pappers contact dataset
- Pappers research tool

### Related Keywords

- Pappers email extractor
- scrape Pappers emails
- Pappers contact scraper
- extract emails from Pappers
- Pappers business email finder
- Pappers company email scraper
- Pappers lead scraper
- Pappers contact data extraction
- Pappers email data
- Pappers company contacts
- Pappers business lead research
- Pappers public contact information
- Pappers keyword scraper
- Pappers company data scraper
- Pappers email collection
- Pappers contact discovery
- Pappers business research scraper
- Pappers structured contact data
- Pappers email search
- Pappers lead data extraction

### Final Overview

Pappers Email Scraper provides a configurable way to collect publicly indexed email addresses associated with Pappers search results. Users can control the search with multiple keywords, optional locations, custom email-domain suffixes, maximum email targets, and exclusion terms.

The resulting dataset contains consistent `keyword`, `title`, `description`, `url`, and `email` fields, making it suitable for business research, contact discovery, market research, and structured dataset creation.

For the best results, begin with focused test searches, use several relevant keywords, select appropriate email domains, and broaden the configuration when the available indexed information is limited.

*Contact me:* <Alphascraper69@gmail.com>

# Actor input Schema

## `keywords` (type: `array`):

A list of keywords or queries to search for.

## `location` (type: `string`):

Optional country, state or city used to narrow the search. Leave it empty to search without a geographic filter.

## `customDomains` (type: `array`):

List of custom email domains

## `maxEmails` (type: `integer`):

How many addresses each search keyword + domain suffix combination may collect before the finder moves on to the next one. This is a per-combination target, not a run-wide total: with 3 keyword and 2 Domains and a limit of 20, the run works through all 6 combinations and aims for up to 20 addresses in each, so up to 120 overall. Lower values finish sooner and cost less; higher values dig deeper but never guarantee a fuller result, since the run can only find what is publicly listed.

## `excludeWords` (type: `array`):

Words or phrases you do not want to see.

## Actor input object example

```json
{
  "keywords": [
    "dirigeant",
    "PME"
  ],
  "location": "",
  "customDomains": [
    "@gmail.com"
  ],
  "maxEmails": 5,
  "excludeWords": []
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

# 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 = {
    "keywords": [
        "dirigeant",
        "PME"
    ],
    "location": "",
    "customDomains": [
        "@gmail.com"
    ],
    "excludeWords": []
};

// Run the Actor and wait for it to finish
const run = await client.actor("email_scraper/pappers-email-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 = {
    "keywords": [
        "dirigeant",
        "PME",
    ],
    "location": "",
    "customDomains": ["@gmail.com"],
    "excludeWords": [],
}

# Run the Actor and wait for it to finish
run = client.actor("email_scraper/pappers-email-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 '{
  "keywords": [
    "dirigeant",
    "PME"
  ],
  "location": "",
  "customDomains": [
    "@gmail.com"
  ],
  "excludeWords": []
}' |
apify call email_scraper/pappers-email-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,email_scraper/pappers-email-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/QW2tEAemqA9RBGrrX/builds/Js4xGP8PozWZ3jo9v/openapi.json
