# Lennar.com Scraper (`shahidirfan/lennar-com-scraper`) Actor

Extract Lennar home listings, prices, and developer data for real estate intelligence. Automate property scraping with floor plans, community details, and pricing. Perfect for market research, competitive analysis, and real estate platforms.

- **URL**: https://apify.com/shahidirfan/lennar-com-scraper.md
- **Developed by:** [Shahid Irfan](https://apify.com/shahidirfan) (community)
- **Categories:** Real estate, Automation, Developer tools
- **Stats:** 9 total users, 2 monthly users, 100.0% runs succeeded, 2 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $1.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#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

## Lennar Homes Scraper

Extract Lennar new home listings with pricing, inventory, plan, community, location, and media data. This Lennar scraper is built for fast market monitoring, real estate research, and repeatable housing datasets across state and market pages.

### Features

- **Market-based collection** - Use a Lennar Find-a-Home URL to target a state and market.
- **Listing and plan coverage** - Collect available homesites, plans, and community records when present.
- **Rich media fields** - Save a primary `image_url` plus available `image_urls` from listing, plan, floorplan, room, and feature media.
- **Clean records** - Empty strings and null values are removed before data is saved.
- **Configurable limits** - Control result count and pagination depth for quick tests or larger runs.

### Use Cases

#### Real Estate Market Tracking

Monitor Lennar inventory by market, city, community, and plan. Use repeat runs to compare prices, availability, square footage, and listing status over time.

#### Investment Research

Build datasets for comparing price ranges, bedroom counts, monthly payment data, and community details. This helps analysts evaluate where new-home supply is concentrated.

#### Competitive Intelligence

Track new construction inventory and media assets across active Lennar communities. Compare homesite pricing, plan availability, and community-level positioning.

#### Lead Qualification

Feed structured home data into CRM, alerting, or reporting workflows. Use fields such as address, beds, baths, price, plan name, and community name to route opportunities.

***

### Input Parameters

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| `startUrl` | String | No | `https://www.lennar.com/find-a-home?state=FL&market=MIA` | Lennar Find-a-Home URL with `state` and `market` query parameters. |
| `results_wanted` | Integer | No | `20` | Maximum number of records to save. |
| `max_pages` | Integer | No | `10` | Maximum pagination pages to request. |
| `proxyConfiguration` | Object | No | `{"useApifyProxy": true}` | Proxy settings for production runs. |

***

### Output Data

Each item in the dataset can contain:

| Field | Type | Description |
|-------|------|-------------|
| `record_type` | String | Record category: `homesite`, `plan`, or `community`. |
| `id` | String | Primary record ID. |
| `homesite_id` | String | Homesite ID when the record is a home listing. |
| `plan_id` | String | Related plan ID. |
| `status` | String | Homesite or plan status. |
| `price` | Number | Current homesite price. |
| `formatted_price` | String | Display price when available. |
| `beds` | Number | Bedroom count. |
| `baths` | Number | Bathroom count. |
| `half_baths` | Number | Half bathroom count. |
| `sqft` | Number | Square footage. |
| `address` | String | Homesite or community address. |
| `image_url` | String | Primary image URL. |
| `image_urls` | Array | Available media URLs from listing and plan data. |
| `image_count` | Number | Count of URLs in `image_urls`. |
| `plan_virtual_tour_url` | String | Plan virtual tour URL when available. |
| `community_name` | String | Community name. |
| `community_url` | String | Community page URL. |
| `city_name` | String | City name. |
| `market_code` | String | Lennar market code. |
| `state_code` | String | State code. |
| `url` | String | Detail page URL. |
| `collected_at` | String | Collection timestamp. |

Additional pricing, payment, page view, MPC, and community fields are included when available.

***

### Usage Examples

#### Basic Miami Market Run

```json
{
  "startUrl": "https://www.lennar.com/find-a-home?state=FL&market=MIA",
  "results_wanted": 20
}
```

#### Larger Market Snapshot

```json
{
  "startUrl": "https://www.lennar.com/find-a-home?state=FL&market=MIA",
  "results_wanted": 100,
  "max_pages": 10
}
```

#### Different State and Market

```json
{
  "startUrl": "https://www.lennar.com/find-a-home?state=TX&market=HOU",
  "results_wanted": 50,
  "max_pages": 10
}
```

***

### Sample Output

```json
{
  "record_type": "homesite",
  "id": "h_751681",
  "homesite_id": "h_751681",
  "status": "MOVE_IN_READY",
  "price": 394340,
  "beds": 3,
  "baths": 2.5,
  "sqft": 1338,
  "address": "17871 SW 359 TER",
  "image_url": "https://cdn.lennar.com/api/images/contentassets/example/exterior.jpg",
  "image_urls": [
    "https://cdn.lennar.com/api/images/contentassets/example/exterior.jpg",
    "https://cdn.lennar.com/api/images/contentassets/example/kitchen.jpg"
  ],
  "image_count": 2,
  "plan_name": "Breezeway",
  "community_name": "Seaview Collection",
  "city_name": "Miami",
  "market_code": "MIA",
  "state_code": "FL",
  "url": "https://www.lennar.com/new-homes/florida/miami/miami/del-mar/seaview-collection/breezeway/9396604001",
  "collected_at": "2026-07-04T11:09:33.882Z"
}
```

***

### Tips for Best Results

#### Start With QA-Friendly Limits

- Use `results_wanted: 20` for quick validation.
- Increase the limit after confirming the market URL works.

#### Use Valid Market URLs

- Make sure `startUrl` includes `state` and `market`.
- Copy URLs from Lennar Find-a-Home pages for best matching.

#### Tune Pagination

- Increase `max_pages` when requesting larger datasets.
- If fewer records are saved than requested, the selected market may have fewer unique records available.

***

### Integrations

Connect your data with:

- **Google Sheets** - Review listing snapshots with your team.
- **Airtable** - Build searchable housing inventory tables.
- **Make** - Trigger workflows from completed runs.
- **Zapier** - Send new records to business tools.
- **Webhooks** - Deliver data to custom systems.

#### Export Formats

- **JSON** - For structured data pipelines.
- **CSV** - For spreadsheet analysis.
- **Excel** - For reporting.
- **XML** - For legacy tools.

***

### Frequently Asked Questions

#### Can I collect all available listings in a market?

Yes. Set `results_wanted` and `max_pages` high enough to cover the selected market.

#### Why did I receive fewer records than requested?

The selected market may have fewer unique homesite, plan, and community records available than your requested limit.

#### Are empty values included?

No. Empty strings and null values are removed so the dataset stays clean.

#### Can I collect media URLs?

Yes. Records include a primary `image_url` and `image_urls` when media is available.

#### Can I run this on a schedule?

Yes. Scheduled runs are useful for tracking price and inventory changes.

***

### Support

For issues or feature requests, contact support through the Apify Console.

#### Resources

- [Apify Documentation](https://docs.apify.com/)
- [Apify API Reference](https://docs.apify.com/api/v2)
- [Apify Schedules](https://docs.apify.com/platform/schedules)

***

### Legal Notice

This actor is designed for legitimate data collection and analysis. You are responsible for complying with website terms, local laws, and all applicable regulations.

# Actor input Schema

## `startUrl` (type: `string`):

A Lennar Find-a-Home URL with state and market query params.

## `results_wanted` (type: `integer`):

Maximum number of records to save.

## `max_pages` (type: `integer`):

Safety cap for pagination loops.

## `proxyConfiguration` (type: `object`):

Proxy settings. Apify Proxy is recommended for stable production runs.

## Actor input object example

```json
{
  "startUrl": "https://www.lennar.com/find-a-home?state=FL&market=MIA",
  "results_wanted": 20,
  "max_pages": 10,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `overview` (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 = {
    "startUrl": "https://www.lennar.com/find-a-home?state=FL&market=MIA",
    "results_wanted": 20,
    "max_pages": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("shahidirfan/lennar-com-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 = {
    "startUrl": "https://www.lennar.com/find-a-home?state=FL&market=MIA",
    "results_wanted": 20,
    "max_pages": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("shahidirfan/lennar-com-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 '{
  "startUrl": "https://www.lennar.com/find-a-home?state=FL&market=MIA",
  "results_wanted": 20,
  "max_pages": 10
}' |
apify call shahidirfan/lennar-com-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/KZnTabPStq1A81qCr/builds/k8h5pPXXRv8mWaQFr/openapi.json
