# Nuroa Property Scraper (`getdataforme/nuroa-property-scraper`) Actor

Efficiently scrape property listings from Nuroa.com, extracting detailed data like prices, locations, descriptions, and images. Supports flexible queries, proxies for reliability, and configurable limits. Outputs structured JSON for real estate market research and analysis.

- **URL**: https://apify.com/getdataforme/nuroa-property-scraper.md
- **Developed by:** [GetDataForMe](https://apify.com/getdataforme) (community)
- **Categories:** E-commerce, Jobs, Real estate
- **Stats:** 3 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $10.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 a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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

## Nuroa Property Scraper

### Introduction
The Nuroa Property Scraper is a powerful Apify Actor designed to extract property listings from Nuroa.com efficiently and reliably. It allows users to scrape detailed property data based on location queries, making it ideal for real estate professionals, researchers, and businesses needing up-to-date market information. With built-in proxy support and customizable limits, this scraper ensures high-quality data extraction while respecting website policies.

### Features
- **Comprehensive Data Extraction**: Scrapes key property details including title, price, location, description, images, rooms, bathrooms, size, and agent information.
- **Flexible Query Support**: Accepts multiple location-based search queries to target specific areas or regions.
- **Configurable Limits**: Set maximum items to scrape per run to control data volume and processing time.
- **Proxy Integration**: Utilizes Apify's residential proxies to avoid IP blocks and ensure uninterrupted scraping.
- **High Reliability**: Built with robust error handling to manage dynamic web content and potential site changes.
- **Fast Performance**: Optimized for speed, processing listings quickly without compromising data accuracy.
- **Export-Ready Output**: Produces structured JSON data compatible with various formats like CSV and Excel for easy integration.

### Input Parameters

| Parameter | Type | Required | Description | Example |
|-----------|------|----------|-------------|---------|
| queries | array | Yes | A list of location search queries to scrape properties from. Each query targets a specific area on Nuroa.com. | ["pasadena", "los angeles"] |
| item_limit | integer | No | The maximum number of property items to scrape across all queries. Helps manage run time and data size. | 30 |
| proxyConfiguration | object | No | Configures proxy servers to hide the scraper's origin and avoid rate limits. Uses Apify's residential proxies by default. | {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]} |

### Example Usage

#### Input JSON
```json
{
  "queries": ["pasadena"],
  "item_limit": 30,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"]
  }
}
````

#### Output JSON

```json
[
  {
    "query": "pasadena",
    "title": "4715 Pine Ave 3 Bedrooms, 1 Bathroom",
    "price": "",
    "location": "Pasadena",
    "description": "Stop searching and start living. For more information please contact us via phone or email",
    "url": "https://www.nuroa.com/conversion/featured/pasadena/1/1/RentCafe?siteId=410941&clickType=featured&redirectUrl=https%3A%2F%2Fwww.nuroa.com%2Fproperty%2F5080006767278385494%3Fclick_type%3D1%26pos%3D1%26listingId%3D5080006767278385494%26siteStrategyKey%3Dnuroa.com%26url%3Dhttps%25253A%25252F%25252Fwww.rentcafe.com%25252Fapartments%25252Ftx%25252Fpasadena%25252F4715-pine-ave%25252Fdefault.aspx%26searchType%3D2%26page%3D1%26section%3D26%26t_sec%3D26%26sectionType%3D2%26pageViewId%3D597653f7-d2bc-4b26-b65b-559e73929cd6%26t_pvid%3D597653f7-d2bc-4b26-b65b-559e73929cd6%26userAgent%3DMozilla%252F5.0%2B%2528X11%253B%2BUbuntu%253B%2BLinux%2Bx86_64%253B%2Brv%253A139.0%2529%2BGecko%252F20100101%2BFirefox%252F139.0%26browser%3D1%26isHuman%3Dtrue%26userIp%3D216.131.122.106%26what%3Dpasadena%26search_terms%3Dpasadena%26origin%3D1%26t_or%3D1%26splitTestId%3D0%26detailPageUrl%3Dhttps%25253A%25252F%25252Fwww.nuroa.com%25252Fadclickdetail%25252F5080006767278385494%25253Fclick_type%25253D1%252526pos%25253D1%252526listingId%25253D5080006767278385494%252526siteStrategyKey%25253Dhttps%2525253A%2525252F%2525252Fwww.nuroa.com%252526url%25253Dhttps%252525253A%252525252F%252525252Fwww.rentcafe.com%252525252Fapartments%252525252Ftx%252525252Fpasadena%252525252F4715-pine-ave%252525252Fdefault.aspx%252526searchType%25253D2%252526page%25253D1%252526section%25253D26%252526t_sec%25253D26%252526sectionType%25253D2%252526pageViewId%25253D597653f7-d2bc-4b26-b65b-559e73929cd6%252526t_pvid%25253D597653f7-d2bc-4b26-b65b-559e73929cd6%252526userAgent%25253DMozilla%2525252F5.0%25252B%25252528X11%2525253B%25252BUbuntu%2525253B%25252BLinux%25252Bx86_64%2525253B%25252Brv%2525253A139.0%25252529%25252BGecko%2525252F20100101%25252BFirefox%2525252F139.0%252526browser%25253D1%252526isHuman%25253Dtrue%252526userIp%3D216.131.122.106%252526what%3Dpasadena%252526search_terms%3Dpasadena%252526origin%3D1%252526t_or%3D1%252526splitTestId%3D0%252526clickin%25253Dfalse",
    "image": "https://pics.nuroa.com/web/4715_pine_ave_3_bedrooms_1_bathroom_5080006767278385494.jpg",
    "rooms": "3 rooms",
    "bathrooms": "1 bathroom",
    "size": "",
    "price_per_sqft": "1 bathroom",
    "agent": "RentCafe"
  }
]
```

### Use Cases

- **Market Research and Analysis**: Gather data on property prices, availability, and trends in specific locations for informed decision-making.
- **Competitive Intelligence**: Monitor competitors' listings and pricing strategies to stay ahead in the real estate market.
- **Price Monitoring**: Track rental or sale prices over time to identify opportunities or shifts in the market.
- **Content Aggregation**: Collect property details for websites, blogs, or apps focused on real estate information.
- **Academic Research**: Support studies on housing markets, urban development, or socioeconomic factors by providing raw data.
- **Business Automation**: Integrate scraped data into CRM systems or automated workflows for lead generation and client outreach.

### Installation and Usage

1. Search for "Nuroa Property Scraper" in the Apify Store.
2. Click "Try for free" or "Run".
3. Configure input parameters (e.g., add queries and set item limit).
4. Click "Start" to begin extraction.
5. Monitor progress in the log.
6. Export results in your preferred format (JSON, CSV, Excel).

### Output Format

The output is an array of JSON objects, each representing a scraped property listing. Key fields include:

- `query`: The search query used.
- `title`: Property title or headline.
- `price`: Listed price (may be empty if not specified).
- `location`: Geographic location.
- `description`: Brief property description.
- `url`: Direct link to the listing.
- `image`: URL of the property image.
- `rooms`, `bathrooms`, `size`: Property specifications.
- `price_per_sqft`: Price per square foot (if available).
- `agent`: Listing agent or platform.

Data is structured for easy parsing and integration into databases or analysis tools.

### Support

For custom/simplified outputs or bug reports, please contact:

- Email: support@getdataforme.com
- Subject line: "custom support"
- Contact form: https://getdataforme.com/contact/

We're here to help you get the most out of this Actor!

***

# Actor input Schema

## `queries` (type: `array`):

A list of location search queries

## `item_limit` (type: `integer`):

The maximum number of items to scrape.

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

Specifies proxy servers that will be used by the scraper in order to hide its origin.

## Actor input object example

```json
{
  "queries": [
    "pasadena"
  ],
  "item_limit": 30,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# 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 = {
    "queries": [
        "pasadena"
    ],
    "item_limit": 30,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("getdataforme/nuroa-property-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 = {
    "queries": ["pasadena"],
    "item_limit": 30,
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("getdataforme/nuroa-property-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 '{
  "queries": [
    "pasadena"
  ],
  "item_limit": 30,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call getdataforme/nuroa-property-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Nuroa Property Scraper",
        "description": "Efficiently scrape property listings from Nuroa.com, extracting detailed data like prices, locations, descriptions, and images. Supports flexible queries, proxies for reliability, and configurable limits. Outputs structured JSON for real estate market research and analysis.",
        "version": "0.0",
        "x-build-id": "ZrIpVIrbxt72Smiyz"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/getdataforme~nuroa-property-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-getdataforme-nuroa-property-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/getdataforme~nuroa-property-scraper/runs": {
            "post": {
                "operationId": "runs-sync-getdataforme-nuroa-property-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/getdataforme~nuroa-property-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-getdataforme-nuroa-property-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "queries"
                ],
                "properties": {
                    "queries": {
                        "title": "Location Search Queries",
                        "type": "array",
                        "description": "A list of location search queries",
                        "default": [
                            "pasadena"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "item_limit": {
                        "title": "Max_limit",
                        "type": "integer",
                        "description": "The maximum number of items to scrape.",
                        "default": 30
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Specifies proxy servers that will be used by the scraper in order to hide its origin.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
