# Lennar Property Search Scraper (`alexist/lennar-property-search-scraper`) Actor

Scrape Lennar.com property listings with complete details including address, price, beds, baths, square footage, and availability status. Perfect for real estate analysts, market researchers, and property aggregators collecting New Home data at scale.

- **URL**: https://apify.com/alexist/lennar-property-search-scraper.md
- **Developed by:** [Alex](https://apify.com/alexist) (community)
- **Categories:** Automation, Developer tools, Real estate
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

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

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

## Lennar Property Search Scraper: Extract Home Listings in Bulk

***

### What Is Lennar.com?

Lennar Corporation operates one of the largest new home sales platforms in the United States. Lennar.com allows buyers to search available properties across multiple markets and states, filtering by location, price, and specifications. Each listing includes photos, floor plans, pricing details, and estimated monthly payments. Manually collecting this property data is labor-intensive — the **Lennar Property Search Scraper** automates extraction, turning individual listings into structured datasets suitable for analysis and integration.

***

### Scraper Overview

The **Lennar Property Search Scraper** extracts detailed property information from Lennar.com search result pages. It collects comprehensive data on available homes, including pricing, specifications, and property identifiers. Ideal users include:

- **Real Estate Analysts** tracking inventory and pricing trends across markets
- **Market Researchers** studying new home supply and demand patterns
- **Property Aggregators** building multi-source home listing databases
- **Investors** monitoring regional market conditions and available opportunities

Key strengths: Handles paginated search results efficiently, captures 20+ data points per listing, supports regional market filtering, and gracefully manages URL failures with optional error skipping.

***

### Input Format

The scraper accepts a JSON configuration specifying which properties to collect:

```json
{
  "urls": [
    "https://www.lennar.com/find-a-home?state=AR&market=NWA&mapCoordinates=36.9790%2C-93.3521%2C35.3605%2C-94.9341"
  ],
  "max_items_per_url": 200,
  "ignore_url_failures": true
}
```

| Parameter | Type | Description |
|---|---|---|
| `urls` | Array (String) | Direct links to Lennar property search pages. Build these using Lennar's search filters (state, market, map coordinates). You can paste one URL or multiple URLs for batch collection. |
| `max_items_per_url` | Integer | Maximum number of properties to extract from each URL (e.g., `200`). Respects pagination limits on the target page. |
| `ignore_url_failures` | Boolean | If `true`, the scraper continues if a URL fails; if `false`, the run stops. Recommended `true` for large batch operations. |

> **Pro Tip:** Build your Lennar search URL by navigating to find-a-home, applying filters (state, market), and copying the resulting URL. The `mapCoordinates` parameter specifies geographic bounds.

***

### Output Format

**Sample output**

```json
{
  "id": "h_832879",
  "elevation_image": {
    "image": {
      "alt": "Taylor Core E300 Elmstead K",
      "url": "https://cdn.lennar.com/api/images/Content/data/version10/base-content/plans/core-product/parker-core/pc_planname_plan1234/taylor_core_e300_rend_elmstead_k.jpg?d=20250409T184741",
      "__typename": "ImageType"
    },
    "desc": "A stylish exterior with batten siding, brick details and a hipped roofline",
    "title": "Exterior K",
    "__typename": "TitleImageType"
  },
  "status": "MOVE_IN_READY",
  "address": "6604 SW Memphis Ave",
  "baths": 3,
  "half_baths": 0,
  "beds": 3,
  "price": 267900,
  "was_price": 0,
  "formatted_price": "",
  "badge": null,
  "sqft": 1430,
  "url": "/new-homes/arkansas/northwest-arkansas/bentonville/hope-hill/rc-elmstead/74510920003",
  "is_hotw": true,
  "lotid": "74510920003",
  "checkout_type": "BUY_NOW_NO_DEPOSIT",
  "offer_available": true,
  "offer_end_date": "2027-07-21T00:00:00Z",
  "google_place_id": "ChIJSUnWTgAQyYcRAr8lJMiMgNo",
  "page_views": null,
  "plan": {
    "name": "RC Elmstead",
    "custom_price": null,
    "starting_price": 264000,
    "community": {
      "name": "Hope Hill",
      "price_range": [
        206100,
        379200
      ],
      "state_code": "AR",
      "division_number": "BENRCH",
      "city": {
        "name": "Bentonville",
        "market": {
          "code": "NWA",
          "show_model_homes_sitemaps": false,
          "__typename": "MarketType"
        },
        "__typename": "CityType"
      },
      "mpc": null,
      "bed_range": "2 - 4",
      "bath_range": "2 - 3",
      "sqft_range": "869 - 2,065 sq. ft.",
      "__typename": "CommunityType"
    },
    "elevation_images": [
      {
        "image": {
          "alt": "Taylor Core E300 Elmstead K",
          "url": "https://cdn.lennar.com/api/images/Content/data/version10/base-content/plans/core-product/parker-core/pc_planname_plan1234/taylor_core_e300_rend_elmstead_k.jpg?d=20250409T184741",
          "__typename": "ImageType"
        },
        "__typename": "TitleImageType"
      }
    ],
    "__typename": "PlanType"
  },
  "show_estimated_monthly_payment": true,
  "estimated_monthly_payment": {
    "approximate_hoa_fee": 20.83,
    "community_development_fee": 0,
    "principal_and_interest": 1390.08,
    "home_insurance": 111.63,
    "property_tax": 126.14,
    "mortgage_insurance": 0,
    "loan_type": "C",
    "__typename": "EstimatedMonthlyPaymentType"
  },
  "from_url": "https://www.lennar.com/find-a-home?state=AR&market=NWA&mapCoordinates=36.9790%2C-93.3521%2C35.3605%2C-94.9341"
}
```

Each scraped property returns a detailed record with 23+ fields:

#### Property Identification

| Field | Description | Example |
|---|---|---|
| `ID` | Unique Lennar property identifier | `12345-NWA-AR` |
| `Lot ID` | Parcel/lot identifier for the property | `LOT-9876` |
| `Google Place ID` | Google Maps place ID for the location | `ChIJ...` |
| `URL` | Direct link to the property detail page | `https://www.lennar.com/new-homes/ar/nwa/12345` |

#### Basic Property Details

| Field | Description | Example |
|---|---|---|
| `Address` | Full street address of the property | `123 Main Street, Bentonville, AR 72712` |
| `Beds` | Number of bedrooms | `4` |
| `Baths` | Number of full bathrooms | `2.5` |
| `Half Baths` | Number of half bathrooms | `1` |
| `Square Feet` | Total living area | `2,150` |
| `Plan` | Floor plan name or model | `The Evergreen Collection - Model A` |

#### Pricing & Financial

| Field | Description | Example |
|---|---|---|
| `Price` | Current asking price in dollars | `450000` |
| `Was Price` | Previous or list price (if on sale) | `475000` |
| `Formatted Price` | Price formatted for display | `$450,000` |
| `Show Estimated Monthly Payment` | Whether monthly payment is displayed | `true` |
| `Estimated Monthly Payment` | Projected monthly payment (principal, interest, taxes, insurance) | `2,850` |

#### Property Status & Visuals

| Field | Description | Example |
|---|---|---|
| `Status` | Current listing status | `Active`, `Sold`, `Coming Soon` |
| `Elevation Image` | URL to front elevation photo | `https://images.lennar.com/elevation-123.jpg` |
| `Badge` | Special designation badge | `HOTW` (Home of the Week), `New`, `Price Reduced` |
| `Is HOTW` | Boolean flag if property is Home of the Week | `true` |

#### Special Offers & Engagement

| Field | Description | Example |
|---|---|---|
| `Offer Available` | Whether a promotional offer applies | `true` |
| `Offer End Date` | Expiration date of the active offer | `2024-12-31` |
| `Checkout Type` | Purchase path type | `Standard`, `HomePath`, `Incentive` |
| `Page Views` | Listing engagement metric (views) | `342` |

***

### How to Use

1. **Build your search URLs** — Go to Lennar.com's "Find a Home" page, apply filters (state, market, price range), and copy the resulting URL from your browser address bar.

2. **Prepare the input configuration** — Paste one or more search URLs into the `urls` array. Set `max_items_per_url` to 200 (or lower if you want to sample fewer results).

3. **Enable error tolerance** — Set `ignore_url_failures: true` to skip problematic URLs without interrupting the run.

4. **Start the scrape** — Run the actor and monitor progress. Each URL is processed sequentially.

5. **Export the data** — Download results as JSON, CSV, or Excel. Import into your analysis tool, database, or property platform.

**Troubleshooting tips:**

- Verify URLs point to search result pages, not individual property details
- For large markets (100+ properties), split into multiple URLs by market segment
- Check that filters are applied in the URL before pasting (Lennar encodes filters in query parameters)

***

### Use Cases & Business Applications

- **Market Intelligence:** Track new home inventory, pricing trends, and stock levels by region and quarter
- **Competitive Analysis:** Monitor competitor (builder) activity, pricing strategies, and promotional offers
- **Investment Research:** Identify emerging markets, pricing patterns, and opportunity zones
- **Property Aggregation:** Ingest Lennar listings into multi-source real estate platforms
- **Lead Generation:** Build targeted outreach lists based on property availability and pricing

By automating data collection, the Lennar Property Search Scraper reduces manual effort from hours to minutes, delivering fresh, structured data for reporting, modeling, and decision-making.

***

### Conclusion

The **Lennar Property Search Scraper** is a powerful tool for anyone needing bulk access to new home data from Lennar.com. With 23+ output fields covering pricing, specifications, and engagement metrics, it enables market analysis, competitive tracking, and property aggregation workflows. Configure your search filters, set your collection limits, and start extracting actionable real estate data today.

# Actor input Schema

## `urls` (type: `array`):

Add the URLs of the property list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.

## `ignore_url_failures` (type: `boolean`):

If true, the scraper will continue running even if some URLs fail to be scraped.

## `max_items_per_url` (type: `integer`):

The maximum number of items to scrape per URL.

## Actor input object example

```json
{
  "urls": [
    "https://www.lennar.com/find-a-home?state=AR&market=NWA&mapCoordinates=36.9790%2C-93.3521%2C35.3605%2C-94.9341"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20
}
```

# 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 = {
    "urls": [
        "https://www.lennar.com/find-a-home?state=AR&market=NWA&mapCoordinates=36.9790%2C-93.3521%2C35.3605%2C-94.9341"
    ],
    "ignore_url_failures": true,
    "max_items_per_url": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("alexist/lennar-property-search-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 = {
    "urls": ["https://www.lennar.com/find-a-home?state=AR&market=NWA&mapCoordinates=36.9790%2C-93.3521%2C35.3605%2C-94.9341"],
    "ignore_url_failures": True,
    "max_items_per_url": 20,
}

# Run the Actor and wait for it to finish
run = client.actor("alexist/lennar-property-search-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "urls": [
    "https://www.lennar.com/find-a-home?state=AR&market=NWA&mapCoordinates=36.9790%2C-93.3521%2C35.3605%2C-94.9341"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20
}' |
apify call alexist/lennar-property-search-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=alexist/lennar-property-search-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/HkmyNj6RfDAQXHeGi/builds/8cnACINpYmFdk4cvk/openapi.json
