# Trulia Email Scraper (`email_scraper/trulia-email-scraper`) Actor

Trulia Email Scraper extracts publicly discoverable email addresses from Trulia search results using targeted keywords, locations, and email-domain filters. Build structured real estate lead lists with email, title, description, and URL data.

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

### 🔍 Trulia Email Scraper – Overview

**Trulia Email Scraper** is an Apify Actor designed to extract publicly listed email addresses from Trulia-related search results using targeted keywords, locations, and email-domain filters.

Instead of manually searching Trulia profiles one by one, you can provide search terms such as *Real Estate Agent*, *Realtor*, or *Property Manager* and let the Actor collect matching publicly visible contact information into a structured dataset.

The Actor is especially useful for lead generation, prospect research, real estate market research, and building targeted business contact lists from publicly available Trulia search results.

> **✨ What it does**
>
> - Searches for Trulia pages using your selected keywords or queries.
> - Supports optional country, state, or city targeting.
> - Filters results by email-domain suffixes such as `@gmail.com`.
> - Extracts publicly displayed email addresses from matching search-result descriptions.
> - Removes duplicate email addresses across the run.
> - Stores results in an Apify dataset.
> - Supports multiple keywords and multiple email domains in one run.
> - Allows unwanted words or phrases to be excluded from matching snippets.

The easiest workflow is simple: **enter keywords → optionally add a location → select email domains → set your email limit → run the Actor → export the dataset.**

### 🔍 Trulia Email Scraper – Key Features

The Actor is built around targeted Trulia email extraction rather than collecting unrelated information from the entire web.

#### 🎯 Targeted Keyword Search

Use specific search terms to improve the relevance of your Trulia email results.

For example:

- `Real Estate Agent`
- `Realtor`
- `Property Manager`
- `Real Estate Broker`
- `Luxury Realtor`
- `Commercial Real Estate`
- `Property Management`
- `Real Estate Investor`

Using several related keywords can provide broader coverage than relying on one generic term.

#### 📍 Location-Based Targeting

You can optionally enter a location such as a country, state, or city.

Examples:

- `New York`
- `Los Angeles`
- `California`
- `Texas`
- `Toronto`
- `Miami`

Leave the location empty when you want the search to remain geographically broad.

#### 📧 Email Domain Filtering

The Actor allows you to specify the email-domain suffixes you want to search for.

Examples include:

- `@gmail.com`
- `@yahoo.com`
- `@outlook.com`
- `@hotmail.com`
- `@icloud.com`
- Custom business domains

This makes Trulia email extraction more targeted when you are looking for particular types of publicly listed addresses.

#### 🚫 Exclude Words

The **Exclude words** option lets you skip search-result snippets containing unwanted words or phrases.

For example:

- `crypto`
- `onlyfans`
- `gaming`
- `irrelevant-term`

Matching is case-insensitive. Single words are matched as complete words, while phrases can be matched as phrases.

> **💡 Why use filters?**
>
> Combining a specific keyword, location, email domain, and exclusion terms can significantly improve the relevance of the resulting Trulia email leads.

### 📊 Trulia Email Scraper – What Data You Can Extract

The Actor outputs structured lead records containing the information associated with each discovered email address.

| Field         | Description                                                 |
| ------------- | ----------------------------------------------------------- |
| `network`     | Source network identifier: `Trulia.com`                     |
| `keyword`     | Keyword used to discover the result                         |
| `title`       | Title of the matching search result                         |
| `description` | Public search-result description associated with the result |
| `url`         | URL associated with the search result                       |
| `email`       | Publicly detected email address                             |

Each record connects the discovered email with its keyword, result title, description, and URL, making the dataset easier to review and use for lead research.

> **📦 Output / Data Fields**
>
> - **network** — Trulia.com
> - **keyword** — Search keyword that produced the result
> - **title** — Matching result title
> - **description** — Search-result description
> - **url** — Result URL
> - **email** — Extracted email address

The Actor does not claim that every Trulia profile contains an email address. Results depend on what is publicly discoverable for the selected search terms, domains, and locations.

### 🔍 Trulia Email Scraper – How to Use It

Using the Actor requires only a few configuration steps.

#### 1. Enter Your Keywords

Add one or more keywords to the **Keywords or Queries** input.

A focused keyword is usually more useful than a very broad term.

For example, instead of only:

`Real Estate`

consider using:

- `Real Estate Agent`
- `Realtor`
- `Property Manager`
- `Real Estate Broker`

You can combine several related terms in the same run.

#### 2. Add a Location

The **Region / Location** field is optional.

Enter a city, state, or country when you want to focus your search geographically.

For example:

`Miami`

or:

`Florida`

Leave it blank when you want broader search coverage.

#### 3. Select Email Domains

Enter the email suffixes you want the Actor to target.

The default domain is:

`@gmail.com`

You can add additional domains when you want broader email discovery.

#### 4. Set the Maximum Email Target

The **Max Emails** setting controls the target number of addresses for each keyword + domain combination.

The supported range is **1 to 10,000**.

For example, if you configure:

- 3 keywords
- 2 email domains
- Maximum = 20

the Actor processes the keyword/domain combinations independently, targeting up to 20 addresses for each combination.

Because duplicate emails are removed, the final number of unique records can be lower than the theoretical maximum.

#### 5. Add Exclusion Terms

Use **Exclude words** when certain descriptions should not contribute emails to your results.

This is useful when your search produces profiles or snippets that are not relevant to your prospecting criteria.

#### 6. Run and Review the Dataset

Start the Actor and review the resulting Apify dataset.

The dataset provides structured records that can be filtered, analyzed, or exported through Apify's available dataset workflows.

> **⚡ Quick workflow**
>
> - Add targeted Trulia keywords.
> - Add a location if geographical targeting is required.
> - Select one or more email domains.
> - Set an appropriate maximum.
> - Add exclusion words when necessary.
> - Run the Actor.
> - Review the structured Trulia lead dataset.

### 🔎 How to Extract Trulia Emails Using Keywords

The quality of a Trulia email search depends heavily on the keywords you provide.

Generic searches can produce broader results, while more descriptive searches can focus the Actor on a particular type of real estate professional.

For example, a campaign targeting property-management professionals could use:

- `Property Manager`
- `Property Management`
- `Residential Property Manager`
- `Commercial Property Manager`
- `Real Estate Property Manager`

A campaign targeting real estate professionals could use:

- `Realtor`
- `Real Estate Agent`
- `Real Estate Broker`
- `Luxury Real Estate Agent`
- `Commercial Realtor`

Using multiple related queries gives you different search combinations and can increase the overall opportunity to discover publicly listed emails.

> **📌 Search tip**
>
> If your results are sparse, try adding related keywords, expanding the location, adding additional email domains, or reducing overly restrictive filters.

### 📧 Can You Search for Gmail and Other Email Domains?

Yes. The Actor supports custom email-domain suffixes through the **E-mail domain suffixes** input.

For example, you can configure:

- `@gmail.com`
- `@yahoo.com`
- `@outlook.com`
- `@hotmail.com`

You can also provide custom domains when you want to search for publicly listed business email addresses.

This feature is useful when your lead-generation workflow has a specific email-domain requirement.

### 🚫 Can You Exclude Specific Profiles or Search Results?

Yes. The **Exclude words** filter is designed for this purpose.

If an excluded word or phrase appears in a profile's search-result description, that snippet is skipped and an email from that snippet is not collected.

For example, if you enter:

- `crypto`
- `onlyfans`

matching snippets containing those terms can be excluded from the collection process.

This provides an additional relevance layer without requiring you to manually inspect every search result.

### 🎯 Trulia Email Scraper – Use Cases

#### 🏠 Real Estate Lead Generation

Real estate professionals can use Trulia email extraction to discover publicly listed contact addresses associated with relevant search results.

Useful keywords include:

- Realtor
- Real Estate Agent
- Broker
- Property Manager
- Real Estate Investor

#### 🏢 Property Management Research

Property-management companies and professionals can be researched using targeted property-related search terms.

You can combine professional keywords with locations to focus on a particular market.

#### 📍 Local Market Research

Use the location field to research a city, state, or country.

For example:

`Real Estate Agent + Miami`

or:

`Property Manager + Texas`

This approach can help organize prospect research around specific geographic markets.

#### 📈 Prospect List Building

The structured dataset can serve as a starting point for creating a prospect list based on publicly discoverable contact information.

Each result includes the keyword, title, description, URL, and email, allowing you to understand where the contact was discovered.

#### 🔎 Real Estate Competitive Research

Researchers can use targeted searches to identify publicly visible real estate-related profiles and contact information associated with particular markets or professional categories.

> **💼 Lead Research Box**
>
> **Keywords + location + domain filters + exclusion terms** give you control over the type of publicly discoverable Trulia email results you want to collect.

### ⚙️ Input

The Actor supports the following user-facing inputs:

| Input           | Type    | Required | Default                                      |
| --------------- | ------- | -------- | -------------------------------------------- |
| `keywords`      | Array   | Yes      | Real Estate Agent, Realtor, Property Manager |
| `location`      | String  | No       | Empty                                        |
| `customDomains` | Array   | No       | `@gmail.com`                                 |
| `maxEmails`     | Integer | No       | 10                                           |
| `excludeWords`  | Array   | No       | Empty                                        |

#### 🔑 Keywords or Queries

A list of keywords or search queries used to find relevant Trulia results.

At least one keyword is required.

#### 📍 Region / Location

An optional country, state, or city used to narrow the search.

#### 📧 E-mail Domain Suffixes

A list of email domains that determines which email suffixes the Actor searches for.

#### 🔢 Max Emails

The maximum target for each keyword + domain combination.

Values from **1 to 10,000** are accepted.

#### 🚫 Exclude Words

A list of words or phrases used to skip matching search-result descriptions.

### 📤 Output

The Actor stores structured results in the **Trulia Emails Dataset**.

A typical output record looks like this:

```json
{
  "network": "Trulia.com",
  "keyword": "Real Estate Agent",
  "title": "Example Real Estate Agent",
  "description": "Example professional profile information with contact@example.com",
  "url": "https://www.trulia.com/...",
  "email": "contact@example.com"
}
```

The exact values depend on the publicly available search results returned for your selected keywords, locations, and email domains.

> **📦 Important output note**
>
> The Actor extracts publicly discoverable email addresses from matching search-result descriptions. It does not guarantee that every profile has an email address or that a requested email target will always be reached.

### 💰 Pricing

The provided Actor configuration does not specify a monetary price for using the Actor, so no fixed dollar price is claimed here.

The Actor does include different result-limit behavior depending on the user's Apify plan:

- Free users are limited to a maximum of **100 emails**.
- Paid users do not have the same 100-email free-tier restriction.
- The `maxEmails` input can still be used to control the requested collection target.
- Actual Apify platform costs should be checked in your Apify account and current Actor pricing information.

> **💡 Cost-control tip**
>
> Start with a smaller `maxEmails` value and a focused keyword set. Increase the target or broaden your search only when you need additional coverage.

### 🛠️ Tips and Best Practices

#### Use Specific Keywords

More descriptive search terms can produce more focused lead results.

Instead of only `Real Estate`, try combinations such as:

- Real Estate Agent
- Realtor
- Property Manager
- Commercial Realtor
- Luxury Real Estate

#### Combine Related Keywords

Using multiple related terms allows the Actor to explore different search intents.

For example:

`Realtor`, `Real Estate Agent`, and `Property Manager`

can target different professional profiles.

#### Use Location Strategically

Add a location when geographic relevance is important.

If the search is too narrow, remove the location or use a broader region.

#### Add Multiple Domains

If you only search for `@gmail.com`, publicly listed addresses using other domains may not be included.

Adding relevant domains can broaden email discovery.

#### Avoid Overly Narrow Filters

A combination of a very specific keyword, narrow location, one domain, and many exclusion terms can produce fewer results.

Start with reasonable targeting and refine your configuration based on the results.

> **⚠️ Important**
>
> The Actor can only collect email addresses that are publicly discoverable in the search results. Increasing the maximum does not guarantee more emails when matching public results are unavailable.

### ❓ Frequently Asked Questions

#### What is a Trulia Email Scraper?

A **Trulia Email Scraper** is a tool that searches for publicly discoverable Trulia-related results and extracts matching email addresses based on user-defined keywords and email domains.

#### How do I scrape Trulia emails with keywords?

Enter one or more keywords in the **Keywords or Queries** field, optionally specify a location, select email domains, and run the Actor. Matching publicly discoverable emails are returned as structured dataset records.

#### Can I search Trulia emails by city?

Yes. Enter a city, state, or country in the **Region / Location** field to narrow the search geographically.

#### Can I collect Gmail addresses from Trulia?

Yes. `@gmail.com` is supported and is the default email-domain suffix.

#### Can I search multiple email domains?

Yes. Add multiple email-domain suffixes to the `customDomains` input to target different publicly listed email domains.

#### Can I exclude unwanted search results?

Yes. Add words or phrases to **Exclude words**. Matching snippets are skipped during collection.

#### Why did I receive fewer emails than my maximum?

The maximum is a collection target, not a guarantee. The available public search results may contain fewer matching email addresses, or duplicate addresses may have already been collected.

#### Does the Actor remove duplicate emails?

Yes. Email addresses are tracked so the same email is not repeatedly added as a new result during the run.

#### What data does the Trulia Email Scraper return?

The output contains `network`, `keyword`, `title`, `description`, `url`, and `email`.

#### Can I use several keywords in one run?

Yes. The Actor is designed to process a list of keywords and combine them with the selected email-domain filters.

#### How can I improve Trulia email results?

Use several closely related keywords, consider adding relevant email domains, broaden the location when necessary, and avoid excessive exclusion terms.

### 📞 Support

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

**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": [
    "Real Estate Agent",
    "Realtor",
    "Property Manager"
  ],
  "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": [
        "Real Estate Agent",
        "Realtor",
        "Property Manager"
    ],
    "location": "",
    "customDomains": [
        "@gmail.com"
    ],
    "excludeWords": []
};

// Run the Actor and wait for it to finish
const run = await client.actor("email_scraper/trulia-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": [
        "Real Estate Agent",
        "Realtor",
        "Property Manager",
    ],
    "location": "",
    "customDomains": ["@gmail.com"],
    "excludeWords": [],
}

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

```

## MCP server setup

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