# Paginasamarillas.com.co Email Scraper (`email_scraper/paginasamarillas-com-co-email-scraper`) Actor

Extract publicly available business email addresses from Paginasamarillas.com.co using targeted keywords, locations, and custom email domains. Paginasamarillas.com.co Email Scraper helps you build structured contact datasets for lead generation, sales prospecting, and market research.

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

### 🔍 Paginasamarillas.com.co Email Scraper – Overview

**Paginasamarillas.com.co Email Scraper** is an Apify Actor designed to discover publicly listed email addresses associated with relevant **Paginasamarillas.com.co** search results. It helps marketers, sales teams, researchers, agencies, and lead-generation professionals turn targeted search keywords into a structured contact dataset.

Instead of manually searching directory pages and copying contact details one by one, you can provide keywords, optional location terms, preferred email domains, and exclusion words. The **Paginasamarillas.com.co Email Scraper** then searches for matching results and extracts email addresses that fit your selected domain filters.

The easiest workflow is simple: enter one or more keywords, optionally add a city or country, choose email domains such as `@gmail.com` or `@yahoo.com`, set the maximum number of emails, and run the Actor. Results are written to an Apify dataset in a structured format.

> **📌 What this Actor does**
>
> - Searches for relevant Paginasamarillas.com.co results using your keywords.
> - Extracts publicly surfaced email addresses matching your selected domains.
> - Supports geographic targeting with an optional location.
> - Removes duplicate email addresses during the run.
> - Lets you exclude results whose descriptions contain specified words or phrases.
> - Stores structured lead information in the Apify dataset.

The **Paginasamarillas.com.co Email Scraper** is particularly useful when your objective is to build a focused business contact list around a niche, service, profession, company type, or location.

***

### 🔹 Paginasamarillas.com.co Email Scraper – Key Features

The **Paginasamarillas.com.co Email Scraper** focuses on practical contact discovery rather than collecting unnecessary information. Its input controls are designed around search relevance, email-domain filtering, geographic targeting, and result volume.

> **✨ Key Features**
>
> - 🔍 Keyword-based Paginasamarillas.com.co search
> - 📍 Optional country, state, or city targeting
> - 📧 Custom email-domain filtering
> - 🎯 Maximum email target per keyword + domain combination
> - 🚫 Exclude-word and phrase filtering
> - ♻️ Duplicate-email prevention
> - 📦 Structured dataset output
> - 🔄 Incremental dataset updates during extraction
> - 🧭 Automatic stopping when search results become unproductive

#### 🔎 Keyword-Based Contact Discovery

You can provide multiple search terms instead of relying on one broad phrase. More specific searches can help narrow the type of businesses, professionals, or organizations you are looking for.

For example, instead of only using:

```text
Fitness
```

you could use:

```text
Fitness Coach
Fitness Trainer
Fitness Studio
Personal Trainer
Online Fitness Coach
```

This approach allows the **Paginasamarillas.com.co Email Scraper** to explore several related search intents and build a broader, more relevant contact dataset.

#### 📍 Location Targeting

The optional location field lets you narrow a search geographically. You can enter a country, state, city, or another useful geographic term.

Leaving the field empty allows the search to run without a specific location filter.

#### 📧 Email Domain Filtering

The **Paginasamarillas.com.co Email Scraper** does not require you to collect every email pattern it encounters. You can define the domains that should be included.

Examples include:

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

You can also provide other domain suffixes relevant to your prospecting requirements.

***

### 📊 Paginasamarillas.com.co Email Scraper – What Data You Can Extract

The Actor creates structured records containing the search context, result title, description, source URL, and extracted email address.

> **📦 Output / Data Fields**
>
> | Field         | Description                                                      |
> | ------------- | ---------------------------------------------------------------- |
> | `keyword`     | The keyword that produced the search result.                     |
> | `title`       | The title associated with the discovered search result.          |
> | `description` | The description or snippet associated with the result.           |
> | `url`         | The source URL associated with the result.                       |
> | `email`       | The extracted email address matching the selected domain filter. |

The dataset view in the Actor configuration is organized around these five user-facing fields, making the resulting contact data easy to inspect and work with inside Apify.

#### 📄 Example Output

A simplified example of one dataset record looks like this:

```json
{
  "keyword": "fitness trainer",
  "title": "Example Fitness Business",
  "description": "Professional fitness training and coaching. Contact: example@gmail.com",
  "url": "https://www.paginasamarillas.com.co/...",
  "email": "example@gmail.com"
}
```

The exact values depend on what publicly available information is returned for your selected searches.

> **💡 Data quality note**
>
> The **Paginasamarillas.com.co Email Scraper** extracts email information that is publicly surfaced in relevant search results. It does not guarantee that every listing contains an email address or that every search will reach your requested target.

***

### 🛠️ Paginasamarillas.com.co Email Scraper – How to Use It

Using the **Paginasamarillas.com.co Email Scraper** requires only a few configuration choices.

#### 1. Enter Keywords

Add the business categories, services, professions, or topics you want to research.

Example:

```json
{
  "keywords": [
    "real estate agency",
    "property manager",
    "real estate broker"
  ]
}
```

#### 2. Add a Location

For geographic lead generation, enter a city, country, or other regional term.

Example:

```text
Bogota
```

For nationwide or unrestricted searches, leave the location blank.

#### 3. Select Email Domains

Choose the email suffixes you want the Actor to target.

Example:

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

#### 4. Set the Maximum Email Target

`maxEmails` controls how many addresses the Actor aims to collect for each **keyword + domain combination**.

For example, with:

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

the Actor processes 6 separate combinations and targets up to 20 email addresses for each combination, subject to the information actually available.

#### 5. Add Exclusion Terms

Use `excludeWords` to remove search-result snippets containing unwanted words or phrases.

Example:

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

Single-word matching is case-insensitive and uses whole-word matching. Phrases are matched case-insensitively as phrases.

#### 6. Run the Actor

Start the **Paginasamarillas.com.co Email Scraper** in Apify and review the resulting dataset as records are collected.

***

### 🔍 How to Extract Paginasamarillas.com.co Business Emails by Keyword

The **Paginasamarillas.com.co Email Scraper** works well when your search strategy uses specific, commercially meaningful keywords.

A broad term may return many loosely related results. More descriptive terms can make the search intent clearer.

For example, a local marketing campaign might use:

```text
Digital Marketing Agency
SEO Agency
Social Media Agency
Web Design Agency
Marketing Consultant
```

You can then add a location such as:

```text
Medellin
```

and target domains such as:

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

This combination creates a more focused business lead-generation workflow.

> **🎯 Search strategy**
>
> - Use several related keywords instead of relying on one generic term.
> - Combine profession, service, and business-category phrases.
> - Add a location when geographic precision matters.
> - Test multiple email domains when broader coverage is needed.
> - Use exclusion terms to remove irrelevant categories.

***

### 📍 Can the Paginasamarillas.com.co Email Scraper Target a City or Country?

Yes. The **Paginasamarillas.com.co Email Scraper** includes an optional `location` field for geographic targeting.

You can enter values such as:

```text
Bogota
Colombia
Medellin
Cali
Barranquilla
```

The location is incorporated into the search criteria. This makes the Actor suitable for localized business research, regional prospecting, market analysis, and niche discovery.

Location targeting can also be left blank when you want the **Paginasamarillas.com.co Email Scraper** to search without a geographic restriction.

***

### 🎯 Paginasamarillas.com.co Email Scraper – Use Cases

The **Paginasamarillas.com.co Email Scraper** can support multiple business and research workflows built around publicly available business contact information.

> **🚀 Common Use Cases**
>
> - **Lead generation:** Build targeted prospect lists for outreach and business development.
> - **Local prospecting:** Discover contacts for businesses in a specific city or region.
> - **B2B research:** Find publicly listed contact emails associated with business categories.
> - **Sales prospecting:** Create segmented contact datasets based on services or industries.
> - **Marketing research:** Identify businesses within a particular market niche.
> - **Agency prospecting:** Research potential clients for SEO, advertising, design, development, or consulting services.
> - **Directory research:** Turn relevant directory search results into structured data.
> - **Market segmentation:** Combine keywords and regions to compare different business segments.
> - **Contact-list building:** Collect email addresses into an organized Apify dataset for further processing.

The quality of the final dataset depends on the public information available for the selected searches. The **Paginasamarillas.com.co Email Scraper** is therefore best used with focused keywords and realistic expectations about public contact availability.

***

### 🧾 Input – What Can You Configure?

The **Paginasamarillas.com.co Email Scraper** supports five configurable input fields.

| Input           | Type    | Default          | Purpose                                             |
| --------------- | ------- | ---------------- | --------------------------------------------------- |
| `keywords`      | Array   | `["company"]`    | Search keywords or queries. Required.               |
| `location`      | String  | Empty            | Optional country, state, or city filter.            |
| `customDomains` | Array   | `["@gmail.com"]` | Email domains to include.                           |
| `maxEmails`     | Integer | `5`              | Maximum target per keyword + domain combination.    |
| `excludeWords`  | Array   | `[]`             | Words or phrases used to exclude matching snippets. |

#### 🔢 `maxEmails` Range

The configured range is:

```text
Minimum: 1
Maximum: 10000
Default: 5
```

This is a target rather than a guarantee. A search may finish with fewer addresses when matching public information is limited.

> **⚠️ Important**
>
> `maxEmails` is applied independently to each keyword and email-domain combination. Increasing the number of keywords or domains can therefore expand the overall search workload.

***

### 📤 Output – Structured Contact Dataset

The Actor stores extracted contacts in an Apify dataset using a table-oriented view.

```json
{
  "keyword": "restaurant owner",
  "title": "Example Restaurant",
  "description": "Restaurant and catering services. Contact example@yahoo.com",
  "url": "https://www.paginasamarillas.com.co/...",
  "email": "example@yahoo.com"
}
```

The combination of `keyword`, `title`, `description`, `url`, and `email` makes each record easier to interpret and trace back to its source result.

The **Paginasamarillas.com.co Email Scraper** also keeps track of already discovered email addresses during processing so that the same address is not repeatedly added as a new contact.

***

### 💰 Pricing and Usage Limits

No specific Actor price is provided in the supplied `actor.json`, so this README does not state a fixed monetary price.

The supplied Actor code does define a **free-tier collection limit of 100 emails**. On free-tier runs, requests above that ceiling are reduced to the supported free-tier limit. Paid runs do not apply that specific 100-email Actor-level ceiling.

> **💡 Practical implication**
>
> - The Actor's configurable `maxEmails` range is 1–10,000.
> - Free-tier runs are capped at 100 collected emails by the Actor logic.
> - Paid runs do not apply that 100-email ceiling.
> - Actual output can still be lower than the selected target because public matching results may be limited.

***

### 🧠 Tips and Best Practices for Better Results

Good input strategy matters when using the **Paginasamarillas.com.co Email Scraper**.

#### 🔎 Use Specific Keywords

Specific search phrases can produce more focused results than very broad terms.

Instead of:

```text
Company
```

try combinations such as:

```text
Construction Company
Construction Contractor
Building Contractor
Home Renovation Contractor
```

#### 📍 Use Location Strategically

Add a location when you want regional leads. Remove it when you want wider discovery.

#### 📧 Test Multiple Domains

If your campaign needs broader email coverage, use several relevant email-domain suffixes.

#### 🚫 Use Exclusion Terms

Exclude categories or words that repeatedly appear in irrelevant results. This can improve the relevance of the final contact dataset.

#### 📈 Start With Moderate Targets

A smaller `maxEmails` value can make initial testing easier. Once you understand the available result density, increase the target where appropriate.

> **✅ Important Notes**
>
> - Not every Paginasamarillas.com.co listing will contain a publicly visible email.
> - A requested target does not guarantee that many unique contacts will be found.
> - Search-result availability can vary by keyword and location.
> - Broader searches generally increase the number of combinations and pages processed.
> - Exclusion filters can intentionally reduce the number of collected contacts.

***

### ⚠️ Limitations of the Paginasamarillas.com.co Email Scraper

The **Paginasamarillas.com.co Email Scraper** is designed around publicly surfaced search-result information, so its results depend on what is available for the selected query.

It should not be treated as a guaranteed database of every business on Paginasamarillas.com.co.

The Actor can stop processing a keyword-domain combination when there are repeated pages without new email addresses, insufficient useful results, or other unsuccessful retrieval conditions. This prevents unnecessary processing after a search becomes unproductive.

Email addresses are also de-duplicated during the run, so repeated appearances of the same address do not become multiple unique contacts.

***

### ❓ Frequently Asked Questions

#### 🔍 What is the Paginasamarillas.com.co Email Scraper?

The **Paginasamarillas.com.co Email Scraper** is an Apify Actor that discovers publicly surfaced email addresses associated with relevant Paginasamarillas.com.co search results using user-defined keywords and email-domain filters.

#### 📧 Can I extract Gmail emails from Paginasamarillas.com.co?

Yes. The default `customDomains` value is `@gmail.com`, and you can add other email suffixes such as `@yahoo.com` or `@outlook.com`.

#### 📍 Can I scrape Paginasamarillas.com.co emails for a specific city?

Yes. Enter a city, country, state, or other regional term in the `location` field to narrow the search.

#### 🔢 How many emails can the Actor collect?

The `maxEmails` input supports values from 1 through 10,000. The target applies to each keyword + domain combination. Free-tier runs are additionally limited to 100 emails by the Actor's logic.

#### 🚫 Can I exclude certain businesses or categories?

Yes. Use `excludeWords` to provide words or phrases. Matching is case-insensitive, and matching snippets are skipped before an email is collected.

#### 📊 What data does the Paginasamarillas.com.co Email Scraper return?

The configured dataset contains `keyword`, `title`, `description`, `url`, and `email`.

#### 🎯 Why did I receive fewer emails than my `maxEmails` target?

The **Paginasamarillas.com.co Email Scraper** cannot create missing public contact information. A search may contain fewer suitable results, or matching results may not expose an email for the selected domain.

#### 📧 Can I use multiple email domains?

Yes. Add several domain suffixes to `customDomains`. Each keyword + domain combination is processed separately.

#### 🔎 What keywords should I use for business lead generation?

Use specific commercial terms such as professions, services, business types, or job-related phrases. Combining related keywords can expand coverage while keeping searches focused.

#### ♻️ Does the Actor collect duplicate emails?

The Actor tracks previously found email addresses and only treats new addresses as unique collected contacts during processing.

#### 🌎 Can I run the scraper without a location?

Yes. Leave `location` blank when you do not want to apply a geographic filter.

#### 🧩 Is the result count guaranteed?

No. `maxEmails` defines a collection target, not a guaranteed number of available contacts.

***

### 🤝 Support

The **Paginasamarillas.com.co Email Scraper** is designed to provide a straightforward workflow for keyword-based business email discovery and structured contact collection.

For questions, feedback, customization requests, or help with the Actor, contact:

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

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

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

```

## MCP server setup

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