# Sitejabber Email Scraper (`email_scraper/sitejabber-email-scraper`) Actor

Sitejabber Email Scraper extracts publicly listed email addresses from Sitejabber search results using targeted keywords, locations, and custom email domains. Filter unwanted profiles and collect structured lead data directly into an Apify dataset.

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

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

### 🔍 Sitejabber Email Scraper – Overview

**Sitejabber Email Scraper** is an Apify Actor built to discover publicly indexed email addresses associated with Sitejabber results using targeted keywords, optional geographic terms, and customizable email-domain filters.

Instead of manually searching Sitejabber-related pages and checking search results for contact information, you can provide a list of search terms and let the **Sitejabber Email Scraper** collect matching email addresses into a structured Apify Dataset.

The Actor is designed for lead research, prospect discovery, market research, contact-list building, and other workflows where publicly available Sitejabber-related contact information is useful.

> 💡 **What the Sitejabber Email Scraper does**
>
> - Searches Sitejabber-related indexed results using your keywords.
> - Targets specific email-domain suffixes.
> - Supports optional country, state, or city targeting.
> - Extracts matching email addresses from publicly displayed result descriptions.
> - Associates every collected email with its keyword and source information.
> - Prevents duplicate email addresses from being collected repeatedly.
> - Supports exclusion words and phrases.
> - Pushes results incrementally into an Apify Dataset.

The simplest workflow is to enter your keywords, optionally specify a location and email domains, choose your email target, and start the Actor.

### 🔹 Sitejabber Email Scraper – Key Features

The **Sitejabber Email Scraper** combines keyword-based search with email-domain filtering so you can create targeted contact discovery searches instead of manually reviewing large numbers of results.

> ⭐ **Key Features**
>
> - 🔎 Keyword-based Sitejabber search
> - 📧 Custom email-domain targeting
> - 🌎 Optional location filtering
> - 🚫 Exclude-word and phrase filtering
> - ♻️ Duplicate email detection
> - 📊 Structured Apify Dataset output
> - 🔗 Source URL for collected results
> - 📝 Result title and description
> - 🔢 Configurable email collection target
> - 🔄 Multiple keyword/domain combinations
> - 💾 Incremental result storage
> - ▶️ Persistent run progress

You can enter multiple related keywords in a single run. For example, a business-research workflow could search for *online stores*, *business reviews*, *product review*, *ecommerce businesses*, and other relevant terms.

Using several focused search queries can help discover different groups of publicly indexed results.

### 📧 Sitejabber Email Scraper – What Data Can You Extract?

The **Sitejabber Email Scraper** returns structured records containing the email address together with the search context in which it was discovered.

> 📦 **Output Data**
>
> - **network** — Identifies the source as `Sitejabber.com`.
> - **keyword** — The keyword responsible for the matching search.
> - **title** — The title of the search result.
> - **description** — The publicly available result description or snippet.
> - **url** — The source URL associated with the result.
> - **email** — The matching email address extracted from the result description.

This structure makes the collected data easier to understand and review because an email is not returned alone. The dataset also retains the keyword, title, description, and source URL connected with that result.

For example:

```json
{
  "network": "Sitejabber.com",
  "keyword": "business reviews",
  "title": "Example Business",
  "description": "Example business information and contact: example@gmail.com",
  "url": "https://www.sitejabber.com/...",
  "email": "example@gmail.com"
}
```

The Actor extracts email addresses from publicly available search-result descriptions. It does not claim access to private accounts, private messages, confidential databases, or hidden contact information.

### 🛠️ Sitejabber Email Scraper – How to Use It

Using the **Sitejabber Email Scraper** requires only a few input settings.

#### 🔹 1. Add Keywords

Enter one or more keywords or search queries.

Example:

```json
{
  "keywords": [
    "online stores",
    "business reviews",
    "Product Review"
  ]
}
```

More specific related queries can be useful when you want to target a particular type of result.

For example, instead of using only *business*, you could experiment with terms such as:

- *online business*
- *online stores*
- *ecommerce business*
- *business reviews*
- *product review*
- *customer reviews*

#### 🔹 2. Add a Location

The optional `location` field lets you narrow the search using a country, state, or city.

Example:

```json
{
  "location": "New York"
}
```

If no geographic targeting is required, leave this field empty.

#### 🔹 3. Select Email Domains

The `customDomains` field determines which email-domain suffixes the Actor searches for.

Example:

```json
{
  "customDomains": [
    "@gmail.com",
    "@yahoo.com",
    "@outlook.com"
  ]
}
```

You can add other domain suffixes when they are relevant to your research.

#### 🔹 4. Set Maximum Emails

The `maxEmails` input controls the collection target for each keyword and email-domain combination.

For example, if you provide:

- 3 keywords
- 2 email domains
- `maxEmails = 20`

the Actor processes 6 keyword/domain combinations, with a target of up to 20 matching addresses for each combination.

This means the theoretical combined target can be higher than the `maxEmails` value. However, the Actor cannot guarantee a particular number because it can only collect matching emails that are publicly discoverable.

#### 🔹 5. Add Exclusion Words

Use `excludeWords` when certain words or phrases should cause a result description to be skipped.

Example:

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

Matching is case-insensitive. Individual words are matched as whole words, while phrases are matched as phrases.

### 🔎 How to Scrape Sitejabber Emails by Keyword

The most practical way to use the **Sitejabber Email Scraper** is to create a search plan based on multiple related keywords.

For example, if your research focuses on online businesses, you could use:

- *online stores*
- *online business*
- *ecommerce*
- *business reviews*
- *product review*

You can then combine those keywords with one or more email domains.

> 💡 **Search optimization tips**
>
> - Use multiple relevant keywords.
> - Prefer specific search phrases over a single generic term.
> - Add several email domains when broader coverage is required.
> - Use a location when regional targeting matters.
> - Remove an overly restrictive location if results are sparse.
> - Use exclusion terms to reduce unwanted categories.
> - Increase the collection target when deeper search coverage is required.

The **Sitejabber Email Scraper** processes keyword/domain combinations independently, allowing your search strategy to cover different combinations rather than relying on one search query.

### 🎯 Can You Use Sitejabber Email Scraper for Lead Research?

Yes. The **Sitejabber Email Scraper** can be used for publicly available contact discovery and lead research when your target audience can be identified through relevant Sitejabber search terms.

For example, a researcher may search for online businesses, ecommerce-related terms, product reviews, or other categories that are relevant to a market study.

The result contains the email address plus contextual fields such as the keyword, title, description, and source URL. This allows you to review where each contact was discovered before using the data in a downstream workflow.

### 🚀 Sitejabber Email Scraper – Use Cases

The **Sitejabber Email Scraper** can support different research and business-data workflows.

> 🎯 **Common Use Cases**
>
> - 📈 Lead generation
> - 📧 Business contact discovery
> - 🔍 Prospect research
> - 🛍️ Ecommerce market research
> - ⭐ Review-based business research
> - 🌎 Location-based prospect discovery
> - 📊 Market analysis
> - 🗂️ Public contact-list building
> - 🧩 Keyword-based audience research
> - 🤝 Outreach research and preparation

For example, a researcher looking for businesses connected to online shopping can combine terms such as *online stores*, *ecommerce*, and *business reviews* with specific email domains and a geographic location.

### ⚙️ Input

The **Sitejabber Email Scraper** accepts five user-facing inputs.

| Input           | Type    | Required | Description                                  |
| --------------- | ------- | -------: | -------------------------------------------- |
| `keywords`      | Array   |      Yes | Keywords or search queries                   |
| `location`      | String  |       No | Country, state, or city filter               |
| `customDomains` | Array   |       No | Email-domain suffixes                        |
| `maxEmails`     | Integer |       No | Target emails per keyword/domain combination |
| `excludeWords`  | Array   |       No | Words or phrases that exclude a result       |

#### 🔹 `keywords`

A list of search keywords or queries. This is the only required input.

Default examples include:

```text
online stores
business reviews
Product Review
```

You can replace these with your own relevant search terms.

#### 🔹 `location`

A text field for optional geographic targeting.

Example:

```text
New York
```

Leave it empty to search without a location filter.

#### 🔹 `customDomains`

A list of email-domain suffixes.

Example:

```text
@gmail.com
@yahoo.com
@outlook.com
```

The Actor uses these values to identify matching email addresses.

#### 🔹 `maxEmails`

An integer between **1 and 10,000** according to the input configuration.

The default value is **10**.

The target applies independently to each keyword/domain combination. It is a collection target rather than a guarantee of available results.

#### 🔹 `excludeWords`

An optional list of words or phrases.

Example:

```text
crypto
onlyfans
```

If an exclusion term appears in a result description, that result is skipped for email extraction.

### 📤 Output

The **Sitejabber Email Scraper** stores collected records in an Apify Dataset.

The configured dataset view displays these primary fields:

| Field         | Format | Description                |
| ------------- | ------ | -------------------------- |
| `keyword`     | Text   | Search keyword used        |
| `title`       | Text   | Matching result title      |
| `description` | Text   | Result description/snippet |
| `url`         | Link   | Source result URL          |
| `email`       | Text   | Extracted email address    |

The Actor also includes the `network` field in each pushed dataset record, identifying the source as `Sitejabber.com`.

> 📊 **Example Dataset Record**
>
> ```json
> {
>   "network": "Sitejabber.com",
>   "keyword": "online stores",
>   "title": "Example Store",
>   "description": "Online store information ... contact@example.com",
>   "url": "https://www.sitejabber.com/...",
>   "email": "contact@example.com"
> }
> ```

The structured dataset makes it easier to inspect the discovered contacts and their source context within Apify.

### 💰 Pricing and Limits

The provided Actor configuration does not specify a monetary price, so this README does not claim a specific dollar cost.

The implementation does include plan-dependent collection behavior.

> 💡 **Limit information**
>
> - Free users have a code-level `maxEmails` ceiling of **100**.
> - Paid users do not have that code-level ceiling.
> - The configured `maxEmails` target applies per keyword/domain combination.
> - A target does not guarantee that the same number of emails will be found.
> - Results depend on matching publicly indexed information.

For example, a free-user run requesting more than 100 for a combination is constrained to the configured free-tier ceiling.

### 🧠 Tips and Best Practices

Getting useful results from the **Sitejabber Email Scraper** depends heavily on search-term quality.

- Start with several specific keywords.
- Use related variations of your main search phrase.
- Add multiple email domains for broader discovery.
- Use location targeting when geographic relevance is important.
- Remove the location filter when it makes the search too narrow.
- Use exclusion terms to remove unwanted categories.
- Begin with a moderate `maxEmails` value.
- Increase the target when you need deeper collection.
- Review the description and source URL before using a contact.
- Remember that publicly available search results determine how many matching emails can actually be collected.

> ⚠️ **Important Result Expectation**
>
> `maxEmails` is a target, not a guarantee. If search results contain fewer matching public email addresses, the Actor can return fewer records than requested.

Broader keyword coverage can provide more opportunities for discovery, while highly restrictive combinations can naturally produce smaller datasets.

### 🔄 What Happens When Search Results Are Limited?

The **Sitejabber Email Scraper** stops individual searches when continuing is no longer producing useful new email results.

A run can therefore finish below its requested target. This is expected when the available indexed results do not contain enough unique email addresses matching the selected keyword, location, and domain.

The Actor also tracks previously collected email addresses, so an address discovered through multiple search combinations is not repeatedly added as a new unique contact.

### 🔐 Data Scope and Responsible Use

The **Sitejabber Email Scraper** is designed around publicly indexed search-result information.

It does not claim to access private Sitejabber accounts, private communications, passwords, confidential databases, or non-public contact information.

Users are responsible for determining whether their intended use complies with applicable privacy laws, marketing regulations, terms of service, and other relevant requirements.

Use collected information appropriately and review contact data before sending commercial communications.

### ❓ Frequently Asked Questions

#### 🔹 What is a Sitejabber Email Scraper?

A **Sitejabber Email Scraper** is an automated Apify tool that searches publicly indexed Sitejabber-related results using keywords and extracts matching email addresses from available result descriptions.

#### 🔹 How do I scrape emails from Sitejabber?

Enter one or more keywords, optionally specify a location, select email-domain suffixes, set the email target, and run the Actor. Matching email addresses are stored in the Apify Dataset with their related search information.

#### 🔹 Can I search Sitejabber emails by location?

Yes. The optional `location` input accepts a country, state, or city and adds that geographic term to the search.

#### 🔹 Can I use multiple keywords in one Sitejabber email scraping run?

Yes. The `keywords` input is an array, allowing you to provide multiple search terms or queries.

#### 🔹 Can I search for Gmail and Yahoo emails?

Yes. Add email suffixes such as `@gmail.com` and `@yahoo.com` to `customDomains`. You can also provide other domain suffixes.

#### 🔹 What does maxEmails mean?

`maxEmails` is the target number of matching email addresses for each keyword and email-domain combination. It is not a guarantee that the requested number exists publicly.

#### 🔹 Does the Sitejabber Email Scraper remove duplicate emails?

Yes. Previously collected email addresses are tracked so the same email is not repeatedly added as a new result.

#### 🔹 Can I exclude specific words from Sitejabber results?

Yes. Add unwanted words or phrases to `excludeWords`. If an exclusion term appears in a result description, that result is skipped for email extraction.

#### 🔹 Why did my Sitejabber email scraper return fewer emails than requested?

The requested target may be higher than the number of matching publicly indexed email addresses. Narrow keywords, restrictive locations, selected domains, duplicate addresses, or limited search results can all reduce the final count.

#### 🔹 What data does the Sitejabber Email Scraper return?

Each collected record contains `network`, `keyword`, `title`, `description`, `url`, and `email`. The main dataset view displays the keyword, title, description, URL, and email.

#### 🔹 Is this a private Sitejabber database scraper?

No. The Actor is designed to extract email addresses from publicly indexed search-result information. It does not claim access to private or confidential Sitejabber information.

#### 🔹 Can I use the Sitejabber Email Scraper for market research?

Yes. Keyword-based searches can be used to discover publicly indexed businesses and contact information relevant to market research, prospect research, and other data-analysis workflows.

#### 🔹 What is the best way to improve Sitejabber email scraping results?

Use several closely related keywords, test multiple relevant email domains, broaden an overly restrictive location, and use exclusion terms only when necessary. These adjustments can increase search coverage without relying on one query.

### 📌 Support

The **Sitejabber Email Scraper** is designed to provide a straightforward workflow for keyword-based email discovery from publicly indexed Sitejabber-related results.

If you need help with input configuration, search strategy, or a custom modification to the Actor, you can contact me directly.

**contact me by email : <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": [
    "online stores",
    "business reviews",
    "Product Review"
  ],
  "location": "",
  "customDomains": [
    "@gmail.com"
  ],
  "maxEmails": 10,
  "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": [
        "online stores",
        "business reviews",
        "Product Review"
    ],
    "location": "",
    "customDomains": [
        "@gmail.com"
    ],
    "excludeWords": []
};

// Run the Actor and wait for it to finish
const run = await client.actor("email_scraper/sitejabber-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": [
        "online stores",
        "business reviews",
        "Product Review",
    ],
    "location": "",
    "customDomains": ["@gmail.com"],
    "excludeWords": [],
}

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

```

## MCP server setup

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