# Lamudi Property Spider (`getdataforme/lamudi-property-spider`) Actor

Scrape comprehensive property data from Lamudi.co.id with this reliable Apify Actor. Extract titles, descriptions, images, amenities, locations, and more from targeted listings....

- **URL**: https://apify.com/getdataforme/lamudi-property-spider.md
- **Developed by:** [GetDataForMe](https://apify.com/getdataforme) (community)
- **Categories:** AI, Integrations, Real estate
- **Features:** Full permissions
- **Stats:** 12 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/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

## Lamudi Property Spider

The Lamudi Property Spider is a powerful Apify Actor designed to scrape detailed property listings from Lamudi.co.id, Indonesia's leading real estate platform. It extracts comprehensive data including property titles, descriptions, images, amenities, and location details, enabling users to gather valuable real estate insights efficiently. This tool is ideal for real estate professionals, researchers, and businesses seeking automated data collection from property listings.

### Features

- **Comprehensive Data Extraction**: Captures key property details such as title, description, bedrooms, bathrooms, floor size, address, latitude/longitude, images, amenities, and breadcrumbs for thorough analysis.
- **High Reliability**: Built on Python Scrapy, ensuring robust scraping with error handling and retries for consistent data retrieval.
- **Flexible Input**: Accepts a list of URLs to target specific property pages, allowing customized scraping runs.
- **Structured Output**: Delivers clean, JSON-formatted data that's easy to integrate into databases, analytics tools, or downstream applications.
- **Performance Optimized**: Handles multiple URLs efficiently, with scalable processing to manage large-scale extractions without overwhelming the target site.
- **Real-Time Monitoring**: Provides logs and progress tracking within the Apify platform for seamless operation.
- **No Coding Required**: User-friendly interface in Apify Store, making it accessible for non-technical users.

### Input Parameters

| Parameter | Type   | Required | Description | Example |
|-----------|--------|----------|-------------|---------|
| Urls      | array  | No       | A list of URLs pointing to specific Lamudi property pages to scrape. Each URL should be a valid property listing link. | \["https://www.lamudi.co.id/jual/bali/badung/dijual-villa-instagramamble-dekat-pantai-bingin-fu-174903302580/"] |

### Example Usage

To run the Actor, provide input in JSON format like this:

```json
{
  "Urls": [
    "https://www.lamudi.co.id/jual/bali/badung/dijual-villa-instagramamble-dekat-pantai-bingin-fu-174903302580/"
  ]
}
```

The Actor will output data in the following JSON structure:

```json
[
  {
    "title": "Vila Dijual di Pecatu",
    "description": "Luxora Retreat Pecatu - Investasi Villa Mewah di Lokasi Premium Bali\n Lokasi dekat Pantai Balangan,Pantai Bingin Pantai Dreamland\n 200 meter dari jalan raya uluwatu Pecatu\n Desain santorini yang instagrammable\n Potensi rental tinggi untuk Passive Income\n \n\n Dengan Luas Bangunan 70 M\n Luas Tanah Mulai 116 M\n 2 Bedroom\n 2 Bathroom\n Living Kitchen\n \u00a0Swimming Pool\n Carport\n \n\n Harga sudah termasuk\n Biaya Balik Nama\n BPHTB\n \u00a0IMB/PBG\n SHM\n Air PDAM\n Listrik 3500 VA\n \n\n BONUS\n AC 1PK 2 Unit\n Water Heater Central 100LTR\u00a0\n Tandon Air 550Liter\n Bathtub\n Kitchen set\u00a0\n Washtafel",
    "images": [
      "https://img.lamudi.com/eyJidWNrZXQiOiJwcmQtbGlmdWxsY29ubmVjdC1iYWNrZW5kLWIyYi1pbWFnZXMiLCJrZXkiOiJpbmdlc3Rlci8wMTk4ZTUxMi0yMjc0LTdkOTAtYjMxNS1mNjdmMTExMGUwZDEvNzZjZjUzZDVmY2M0NzI4NWQzM2NmYmQwNjhkNGY4NGU1N2YzMjUxZmVhNWNlZjNhY2I2ZDY2ZDE2NjkwYTQ4MC5qcGVnIiwiYnJhbmQiOiJsYW11ZGkiLCJlZGl0cyI6eyJyb3RhdGUiOm51bGwsInJlc2l6ZSI6eyJ3aWR0aCI6NjUyLCJoZWlnaHQiOjQ4OSwiZml0IjoiY292ZXIifX19"
    ],
    "bedrooms": 2,
    "bathrooms": 2,
    "address": {
      "street": "Pecatu, Badung Regency, Bali, Indonesia",
      "locality": "Badung",
      "region": "Bali",
      "country": "ID"
    },
    "floor_size": {
      "value": "70",
      "unit": "MTK"
    },
    "latitude": "-8.8315362",
    "longitude": "115.1264522",
    "url": "https://www.lamudi.co.id/jual/bali/badung/dijual-villa-instagramamble-dekat-pantai-bingin-fu-174903302580/",
    "amenities": [
      "Pendingin ruangan (AC)",
      "Garasi",
      "Kitchen set",
      "Taman",
      "Air Panas",
      "Luar ruangan",
      "Pengamanan Parkir",
      "Keamanan",
      "Kolam renang",
      "Teras",
      "Halaman terbuka",
      "Dek",
      "Listrik",
      "Air",
      "Tangki air",
      "Sebagian perabotan"
    ],
    "breadcrumbs": [
      {
        "position": 1,
        "name": "Dijual",
        "item": "https://www.lamudi.co.id/jual/"
      },
      {
        "position": 2,
        "name": "Bali",
        "item": "https://www.lamudi.co.id/jual/bali/rumah/vila/"
      },
      {
        "position": 3,
        "name": "Badung",
        "item": "https://www.lamudi.co.id/jual/bali/badung/rumah/vila/"
      },
      {
        "position": 4,
        "name": "Pecatu",
        "item": "https://www.lamudi.co.id/jual/bali/badung/pecatu/rumah/vila/"
      }
    ],
    "organization": {
      "name": "",
      "url": "",
      "logo": "",
      "description": ""
    }
  }
]
```

### Use Cases

- **Market Research and Analysis**: Gather data on property trends, prices, and features in specific regions like Bali for investment decisions.
- **Competitive Intelligence**: Monitor competitors' listings to understand market positioning and pricing strategies.
- **Price Monitoring**: Track property values over time to identify opportunities or assess market fluctuations.
- **Content Aggregation**: Collect property details for real estate blogs, newsletters, or marketing campaigns.
- **Academic Research**: Study housing patterns, amenities distribution, or urban development in Indonesia.
- **Business Automation**: Integrate scraped data into CRM systems or dashboards for automated reporting and lead generation.

### Installation and Usage

1. Search for "Lamudi Property Spider" in the Apify Store
2. Click "Try for free" or "Run"
3. Configure input parameters
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. Key fields include:

- `title`: The property title.
- `description`: Detailed description with features and pricing.
- `images`: Array of image URLs.
- `bedrooms` and `bathrooms`: Numeric counts.
- `address`: Structured location data (street, locality, region, country).
- `floor_size`: Object with value and unit (e.g., "70" MTK).
- `latitude` and `longitude`: Geographic coordinates.
- `url`: Original listing URL.
- `amenities`: List of property features.
- `breadcrumbs`: Navigation hierarchy.
- `organization`: Seller or agent details (may be empty).

Data is cleaned and structured for easy parsing.

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

## `Urls` (type: `array`):

The urls for the spider.

## Actor input object example

```json
{
  "Urls": [
    "https://www.lamudi.co.id/jual/bali/badung/dijual-villa-instagramamble-dekat-pantai-bingin-fu-174903302580/"
  ]
}
```

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("getdataforme/lamudi-property-spider").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("getdataforme/lamudi-property-spider").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 '{}' |
apify call getdataforme/lamudi-property-spider --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,getdataforme/lamudi-property-spider"
        }
    }
}
```

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/PkTu1ju3KsM856Loq/builds/pzqd9zphrbNt2khek/openapi.json
