# DirectIndustry Email Scraper (`email_scraper/directindustry-email-scraper`) Actor

DirectIndustry Email Scraper extracts publicly indexed emails from DirectIndustry using targeted keywords, location filters, custom email domains, and exclusion terms. Build structured contact datasets for manufacturer, factory, supplier, B2B lead, and industrial business research.

- **URL**: https://apify.com/email\_scraper/directindustry-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

### DirectIndustry Email Scraper

DirectIndustry Email Scraper is an Apify Actor designed to extract publicly indexed email addresses associated with DirectIndustry pages based on targeted search keywords. It helps turn focused search terms into a structured dataset containing the keyword, result title, description, URL, and discovered email address.

The Actor is useful for business research, manufacturer and factory discovery, supplier research, industrial market research, lead research, and contact dataset creation. You provide one or more keywords, optionally narrow the search by country, state, or city, select the email domains you want to collect, and optionally exclude descriptions containing specific words or phrases.

The resulting data is stored in an Apify Dataset in a simple table structure, making it easier to review and use for downstream research or data workflows.

### What Is the DirectIndustry Email Scraper?

DirectIndustry Email Scraper is a keyword-based email extraction tool focused on publicly indexed DirectIndustry information.

Instead of manually searching through DirectIndustry-related search results and copying contact addresses one by one, you can define multiple search terms and email-domain suffixes. The Actor searches for relevant indexed results and extracts matching email addresses from available result descriptions.

The Actor is particularly suited to industrial and B2B-oriented searches where terms such as manufacturer, factory, supplier, equipment, machinery, distributor, or product category can be used to identify relevant results.

The workflow is straightforward:

- Enter one or more keywords.
- Optionally specify a location.
- Choose email-domain suffixes.
- Set the maximum number of emails for each keyword and domain combination.
- Optionally provide words or phrases to exclude.
- Run the Actor.
- Review the resulting structured dataset.

Results are collected as individual records containing the search context and the associated result information.

### Key Features

| Feature                       | Description                                                              | User Benefit                                                   |
| ----------------------------- | ------------------------------------------------------------------------ | -------------------------------------------------------------- |
| Keyword-based search          | Search DirectIndustry using one or multiple keywords or queries.         | Target specific industrial topics and business categories.     |
| Multiple keywords             | Process a list of search terms in one run.                               | Expand research coverage without repeated manual runs.         |
| Location filtering            | Optionally add a country, state, or city.                                | Narrow searches to a geographic area.                          |
| Custom email domains          | Specify email suffixes such as `@gmail.com` or `@yahoo.com`.             | Focus collection on relevant email-domain types.               |
| Per-combination email target  | Configure `maxEmails` for each keyword + domain combination.             | Control the depth of each search combination.                  |
| Exclude words                 | Skip result descriptions containing selected words or phrases.           | Reduce unwanted results according to your criteria.            |
| Duplicate prevention          | Previously collected email addresses are not added again during the run. | Helps keep the dataset cleaner.                                |
| Structured Dataset output     | Results are pushed to an Apify Dataset.                                  | Makes collected contacts easier to review and analyze.         |
| Incremental result collection | Results are added to the dataset as they are collected.                  | Provides a progressively populated dataset during longer runs. |

### What Data Can You Extract?

The DirectIndustry Email Scraper returns five user-facing fields for each collected contact.

- **Keyword** — The keyword associated with the search that produced the result.
- **Title** — The title of the indexed result.
- **Description** — The available result description or search snippet from which the email was identified.
- **URL** — The URL associated with the search result.
- **Email** — The email address matching one of the configured domain suffixes.

Together, these fields provide both the contact address and context around where the address was discovered.

This contextual information can be useful when reviewing industrial contacts because the title, description, and URL can help determine whether a result is relevant to a particular manufacturer, factory, supplier, product category, or research topic.

### Why Use This Actor?

Manual contact research can involve repeatedly entering searches, opening results, reviewing descriptions, identifying email addresses, and recording the information in a structured format.

DirectIndustry Email Scraper automates the repetitive search-and-collection workflow around publicly indexed DirectIndustry results.

It is especially useful when you need to research multiple industrial categories or geographic markets. For example, instead of searching only for `manufacturer`, you can use more specific terms such as `automotive manufacturer`, `industrial machinery manufacturer`, `packaging equipment factory`, or other relevant queries.

Multiple keywords can also be combined with multiple email domains. Each keyword and domain combination is processed independently according to the configured email target.

### Benefits

- **Automated contact research** — Reduce repetitive manual searching and copying.
- **Targeted discovery** — Use specific industrial keywords to focus the research.
- **Geographic targeting** — Add a location when regional research is required.
- **Flexible domain filtering** — Choose the email-domain suffixes relevant to your project.
- **Structured data** — Receive consistent records with contact and search-result context.
- **Dataset creation** — Build organized contact datasets for research and analysis.
- **Repeatable workflows** — Reuse similar keyword, location, and domain configurations for different research tasks.
- **Filtering control** — Exclude descriptions containing unwanted words or phrases.

### How to Use the DirectIndustry Email Scraper

A typical run can be configured in a few steps.

1. Enter one or more keywords in the **Keywords or Queries** field.
2. Add a country, state, or city in **Region / Location** if geographic targeting is required.
3. Enter the email-domain suffixes you want to include.
4. Set **maxEmails** to control the target for each keyword + domain combination.
5. Add optional **excludeWords** if certain descriptions should be skipped.
6. Start the Actor.
7. Review the resulting records in the Apify Dataset.

For initial testing, use a small number of keywords and a modest email target. After reviewing the results, you can expand the search terms, domains, or geographic scope.

### Input

The Actor requires the `keywords` field. All other configuration fields are optional.

| Field           | Type             | Required | Default                       | Description                                                                          |
| --------------- | ---------------- | -------- | ----------------------------- | ------------------------------------------------------------------------------------ |
| `keywords`      | Array of strings | Yes      | `["manufacturer", "factory"]` | Search keywords or queries used to find relevant DirectIndustry 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 include when extracting addresses.                          |
| `maxEmails`     | Integer          | No       | `5`                           | Maximum email target for each keyword + domain combination. Valid range is 1–10,000. |
| `excludeWords`  | Array of strings | No       | `[]`                          | Words or phrases that cause matching result descriptions to be skipped.              |

The `keywords` field accepts multiple search terms. Specific terms generally provide more targeted search intent than relying on one broad term.

The `location` field can be left empty to search without a geographic filter.

For `customDomains`, use email suffixes such as `@gmail.com`, `@yahoo.com`, `@outlook.com`, or another domain suffix relevant to your research.

The `maxEmails` value applies independently to each keyword + domain combination. For example, three keywords and two domains with a target of 20 can create six search combinations, with a target of up to 20 emails for each combination where matching publicly indexed data is available.

The `excludeWords` filter is case-insensitive. A single-word exclusion uses whole-word matching, while a phrase is matched as a case-insensitive phrase. When a result description matches an exclusion term, that result is skipped for email extraction.

### Input Example

```json
{
  "keywords": [
    "industrial manufacturer",
    "machinery factory",
    "packaging equipment supplier"
  ],
  "location": "Germany",
  "customDomains": [
    "@gmail.com",
    "@yahoo.com",
    "@outlook.com"
  ],
  "maxEmails": 10,
  "excludeWords": [
    "crypto",
    "onlyfans"
  ]
}
```

This configuration searches several industrial topics, narrows the search to Germany, checks three email-domain suffixes, targets up to 10 emails per keyword + domain combination, and skips descriptions containing the specified exclusions.

### Output

Each collected result is written as a structured Dataset record.

| Field         | Description                                                           |
| ------------- | --------------------------------------------------------------------- |
| `keyword`     | The keyword used for the search combination that produced the result. |
| `title`       | Title of the indexed search result.                                   |
| `description` | Search-result description or snippet associated with the result.      |
| `url`         | URL associated with the indexed result.                               |
| `email`       | Email address matching the configured domain suffix.                  |

The Dataset view is designed around these five fields, making it straightforward to inspect the relationship between the search keyword, source result, and extracted contact address.

The Actor also avoids adding the same email address more than once during the run.

### Output Example

```json
{
  "keyword": "industrial manufacturer",
  "title": "Industrial Equipment Manufacturer",
  "description": "Manufacturer of industrial equipment and machinery. Contact: sales@example.com",
  "url": "https://www.directindustry.com/example-profile",
  "email": "sales@example.com"
}
```

The example values are illustrative. Actual records depend on the publicly indexed results available for the selected keywords, domains, and location.

### Use Cases

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

- **Manufacturer research** — Identify contact information associated with manufacturing-related searches.
- **Factory discovery** — Research factories and industrial producers by keyword.
- **Supplier research** — Build contact datasets around supplier-related searches.
- **Industrial market research** — Collect contact and result context for specific industrial categories.
- **B2B lead research** — Identify publicly indexed business contact addresses associated with relevant search terms.
- **Geographic research** — Focus searches on specific countries, states, or cities.
- **Product-category research** — Search for businesses associated with particular machinery, equipment, or industrial products.
- **Business intelligence** — Combine structured contact records with other research sources for analysis.
- **Dataset creation** — Create organized DirectIndustry contact datasets for further review.
- **Research automation** — Reduce repetitive search and contact-collection tasks.

### Competitive Advantages

The Actor provides several practical configuration options in one workflow.

- Multiple keywords can be processed in a single run.
- Location can be added when geographic targeting matters.
- Email-domain suffixes can be customized.
- Email collection can be capped separately for each keyword + domain combination.
- Exclusion terms provide additional control over which result descriptions are considered.
- Output includes both contact information and the associated search-result context.
- Duplicate email addresses are not repeatedly added to the dataset.
- Results are stored in a structured Apify Dataset.

These capabilities allow users to adapt the search to different industrial research objectives instead of relying on a single fixed search configuration.

### Advantages

- **Flexible targeting** — Combine industry-specific keywords with optional geographic terms.
- **Configurable contact domains** — Collect only the email-domain suffixes relevant to the project.
- **Context-rich records** — Email addresses are accompanied by title, description, URL, and keyword.
- **Multiple search combinations** — Different keyword and domain combinations can be processed within one run.
- **Controlled collection depth** — Set an email target for individual combinations.
- **Cleaner research datasets** — Duplicate addresses are filtered during collection.
- **User-friendly configuration** — The Actor uses straightforward fields rather than requiring technical parameters.

### Limitations

- Results depend on publicly indexed DirectIndustry information available to the search process.
- An email target is a collection target, not a guarantee that the requested number of addresses exists.
- Narrow keywords or restrictive locations may produce fewer results.
- Selecting only one email domain can reduce the number of matching addresses discovered.
- Some indexed results may not contain an email address matching the configured domain suffix.
- Exclusion terms can intentionally remove otherwise relevant results when their descriptions contain a matching word or phrase.
- Search availability can vary, so a run may finish with fewer emails than the configured target.
- Free-tier usage is subject to a 100-email limit applied by the Actor when the configured target exceeds that limit or is not provided. Paid usage does not apply this code-level ceiling.

The Actor should therefore be viewed as a tool for discovering publicly indexed contact information rather than as a guarantee of complete coverage of all DirectIndustry businesses or contacts.

### Pros and Cons

| Pros                               | Cons                                             |
| ---------------------------------- | ------------------------------------------------ |
| Supports multiple search keywords  | Narrow searches may return fewer contacts        |
| Optional geographic targeting      | Results depend on publicly indexed information   |
| Custom email-domain filtering      | Not every result contains a matching email       |
| Per-keyword + domain email targets | Configured targets do not guarantee availability |
| Exclusion words and phrases        | Exclusions may remove relevant descriptions      |
| Structured Dataset output          | Search coverage can vary                         |
| Duplicate email prevention         | Free-tier collection is capped at 100 emails     |

### Comparison With Alternative Approaches

| Capability                     | DirectIndustry Email Scraper            | Manual / Typical Alternative           |
| ------------------------------ | --------------------------------------- | -------------------------------------- |
| Keyword-based contact research | Supported                               | Usually manual                         |
| Multiple keywords in one run   | Supported                               | Often requires repeated searches       |
| Location filtering             | Supported                               | Depends on the search workflow         |
| Custom email domains           | Supported                               | Usually handled manually               |
| Exclusion terms                | Supported                               | Requires manual filtering              |
| Structured fields              | Keyword, title, description, URL, email | May require manual organization        |
| Duplicate prevention           | Supported during collection             | Often requires manual cleanup          |
| Apify Dataset output           | Supported                               | May require separate data organization |

This comparison describes workflow characteristics rather than guaranteeing a particular result volume or coverage level.

### Best Practices

- Use several specific keywords instead of relying only on a broad term.
- Combine related industrial terms such as manufacturer, factory, supplier, distributor, or a specific product category when appropriate.
- Start with a small `maxEmails` value to evaluate result quality.
- Use a location when the research objective is geographically specific.
- Leave `location` empty when broader coverage is preferred.
- Add multiple relevant email domains when one domain produces sparse results.
- Use `excludeWords` carefully because matching descriptions are skipped entirely.
- Review titles, descriptions, and URLs along with email addresses to verify relevance.
- Increase search coverage by expanding related keywords rather than assuming a single broad query will find every relevant contact.
- Validate important contact information before using it for business communication.

### Troubleshooting

**Invalid Input**

Check that `keywords` is provided as an array of strings. Review the spelling and structure of optional fields such as `customDomains` and `excludeWords`.

**Empty Results**

Try broader or more specific related keywords depending on your objective. If a location is specified, test the search without the location to determine whether geographic filtering is limiting the available results.

**Fewer Emails Than Requested**

The `maxEmails` value is a target, not a guarantee. The indexed results may contain fewer matching email addresses than requested. Adding relevant domains or expanding the keyword set can increase the opportunity for additional matches.

**Missing Email Addresses**

A search result may contain useful business information without exposing an email address in its available description. The Actor only returns email addresses that match the configured domain suffixes.

**Too Many Irrelevant Results**

Use more specific keywords, add a geographic location, or refine the `excludeWords` list. Avoid overly broad search terms when precise research is required.

**Partial Results**

Search coverage can vary depending on the indexed information available for the selected terms. Review the collected dataset and consider expanding keywords or adjusting filters for a broader research scope.

### Frequently Asked Questions

**What does the DirectIndustry Email Scraper do?**

DirectIndustry Email Scraper searches publicly indexed DirectIndustry results using your keywords and extracts matching email addresses from available result descriptions.

**What data does the Actor return?**

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

**Can I use multiple keywords?**

Yes. The `keywords` input is an array, allowing multiple search terms or queries in the same run.

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

Yes. Use the optional `location` field to narrow searches to a country, state, or city. Leave it empty when no geographic filter is needed.

**Can I choose which email domains are collected?**

Yes. Use `customDomains` to specify email suffixes such as `@gmail.com`, `@yahoo.com`, or `@outlook.com`.

**How does maxEmails work?**

`maxEmails` controls the target for each keyword + domain combination. It accepts values from 1 through 10,000 in the Actor schema.

**Does maxEmails guarantee the requested number of emails?**

No. It is a collection target. The Actor can only return matching addresses that are available in the publicly indexed search results.

**What are excludeWords used for?**

They allow you to skip result descriptions containing selected words or phrases. Matching is case-insensitive, and a matching description is excluded from email extraction.

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

The Actor tracks collected email addresses and does not add the same address repeatedly during the run.

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

Try additional relevant keywords, broaden or remove the location filter, or include more appropriate email-domain suffixes. Starting with a small test run can help you refine the configuration.

**Is the DirectIndustry Email Scraper suitable for research workflows?**

Yes. Its keyword targeting, optional location filtering, domain selection, exclusion controls, and structured Dataset output make it suitable for business, industrial, supplier, manufacturer, and market research workflows.

### NLP Keywords

- DirectIndustry email scraper
- DirectIndustry email extraction
- DirectIndustry contact extraction
- DirectIndustry contact data
- DirectIndustry business contacts
- DirectIndustry leads
- DirectIndustry supplier contacts
- DirectIndustry manufacturer contacts
- industrial email scraper
- industrial contact scraper
- B2B email extraction
- business email discovery
- manufacturer email finder
- factory contact finder
- supplier email research
- industrial lead generation
- public business email data
- structured contact dataset
- keyword-based email extraction
- industrial business research

### Related Keywords

- scrape DirectIndustry emails
- DirectIndustry contact scraper
- DirectIndustry email finder
- DirectIndustry lead scraper
- DirectIndustry business email extractor
- extract manufacturer emails
- find factory email addresses
- supplier email scraper
- industrial supplier lead generation
- B2B manufacturer email finder
- factory contact data extraction
- industrial business contact finder
- manufacturer contact research
- supplier contact discovery
- industrial company email search
- business email data collection
- DirectIndustry data extraction
- keyword email scraper
- B2B contact dataset
- industrial lead research

### Final Overview

DirectIndustry Email Scraper provides a focused way to collect publicly indexed email addresses associated with DirectIndustry search results. Users can combine multiple keywords, optional geographic targeting, custom email domains, configurable per-combination email targets, and exclusion terms to shape their research.

The resulting Dataset contains the search keyword, result title, description, URL, and extracted email address, providing useful context alongside each contact.

For the most relevant results, start with focused industrial search terms, test a small configuration, review the dataset, and then expand keywords, domains, or geographic coverage according to the research objective.

*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": [
    "manufacturer",
    "factory"
  ],
  "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": [
        "manufacturer",
        "factory"
    ],
    "location": "",
    "customDomains": [
        "@gmail.com"
    ],
    "excludeWords": []
};

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

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

```

## MCP server setup

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