# Falabella Products Search Chile (`datacach/falabella-products-search-chile`)

The Falabella Chile scraper extracts product data using keywords, including prices, descriptions, discounts, and ratings. Perfect for market analysis and price comparison, with real-time data and easy export in CSV, Excel, or JSON formats.

- **URL**: https://beta-securitybyobscurity.apify.com/datacach/falabella-products-search-chile.md
- **Developed by:** [DataCach](https://beta-securitybyobscurity.apify.com/datacach) (community)
- **Categories:** E-commerce, Agents, Integrations
- **Stats:** 8 total users, 4 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

$5.99 / 1,000 products

This Actor is paid per result. You are not charged for the Apify platform usage, but only a fixed price for dataset items the Actor outputs.

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

# README

## Falabella Chile Product Search Scraper 🛒

### Overview

This scraper extracts product information from Falabella Chile's search results. You can provide search keywords to get comprehensive product data including pricing, specifications, images, availability, and more from Chile's largest retail store.

### Why choose this scraper? 🌟

- **Comprehensive Product Data**: Extract detailed product information including pricing, specifications, images, and availability
- **High-Performance**: Uses concurrent requests with rate limiting for optimal performance
- **Easy Integration**: Simple keyword-based input for quick product data extraction
- **Reliable Performance**: Built with robust error handling and retry mechanisms
- **Chilean Market Focus**: Specifically designed for Falabella Chile's website structure
- **Complete Product Details**: Access to specifications, dimensions, features, and more

### Use Cases

- **E-commerce Analytics**: Analyze product pricing and availability in the Chilean market
- **Competitive Intelligence**: Monitor Falabella's product offerings and pricing strategies
- **Market Research**: Gather comprehensive product data for Chilean market analysis
- **Inventory Management**: Track product availability and stock levels
- **Price Monitoring**: Monitor price changes and promotions on Falabella Chile
- **Product Cataloging**: Build comprehensive product databases for the Chilean market

### Key Features 🚀

- **Product Information**: Name, SKU, brand, product type, description
- **Pricing Data**: Price, currency (CLP), price variants, discounts
- **Availability**: Stock status, seller information, sponsored products
- **Product Details**: Measurements, specifications, features
- **Customer Reviews**: Rating, total reviews count
- **Product Images**: Photo URLs and multimedia content
- **Categories**: Product categorization and type
- **Seller Information**: Seller ID, seller name, product badges
- **Concurrent Processing**: Fast data extraction with controlled concurrency

### How It Works

1. **Input**: Provide search keywords for products you want to find on Falabella Chile
2. **Processing**: The scraper searches across multiple pages with concurrent requests
3. **Output**: Receive structured JSON data with detailed product information

### Input Parameters

| Field | Type | Description | Default | Example |
|-------|------|-------------|---------|---------|
| `keywords` | array | Search keywords for products on Falabella Chile | Required | "accesorios de niños" |
| `max_pages` | integer | Maximum number of pages to search | 25 | 10 |

#### NOTE: Each page returns a maximum of 48 products.

### Output Schema

The scraper returns detailed product information in the following structure:

```json
{
  "id": "product-123456",
  "sku": "SKU123456",
  "name": "Product Name",
  "brand": "Brand Name",
  "product_type": "Electronics",
  "url": "https://www.falabella.com/falabella-cl/product/product-name",
  "price": 99990.0,
  "price_variants": [
    {
      "price": 99990.0,
      "currency": "CLP"
    }
  ],
  "currency": "CLP",
  "photos": [
    "https://images.falabella.com/product-image-1.jpg",
    "https://images.falabella.com/product-image-2.jpg"
  ],
  "measurements": {
    "weight": "1.5 kg",
    "dimensions": "20x15x10 cm"
  },
  "discounts": {
    "percentage": 15,
    "original_price": 117990.0
  },
  "badges": [
    "Envío gratis",
    "Oferta"
  ],
  "multipurpose_badges": [
    "Nuevo",
    "Destacado"
  ],
  "seller_id": "seller123",
  "seller_name": "Falabella",
  "is_sponsored": false,
  "is_best_seller": true,
  "category_id": "cat123",
  "rating": 4.5,
  "total_reviews": 125,
  "variants": [
    {
      "color": "Rojo",
      "size": "M"
    }
  ]
}
```

### Output Fields Explained

#### Basic Product Information

- **`id`**: Unique product identifier
- **`sku`**: Stock Keeping Unit
- **`name`**: Product name/title
- **`brand`**: Brand or manufacturer name
- **`product_type`**: Type/category of product
- **`url`**: Product page URL on Falabella Chile

#### Pricing Information

- **`price`**: Current selling price in CLP
- **`price_variants`**: Array of different price options
- **`currency`**: Price currency (CLP - Chilean Peso)
- **`discounts`**: Discount information and original prices

#### Availability & Seller Information

- **`seller_id`**: Unique seller identifier
- **`seller_name`**: Name of the seller/vendor
- **`is_sponsored`**: Whether the product is sponsored
- **`is_best_seller`**: Whether the product is a best seller

#### Product Media

- **`photos`**: Array of product image URLs
- **`multipurpose_badges`**: Additional product badges and labels

#### Product Specifications

- **`measurements`**: Product dimensions and measurements
- **`variants`**: Product variations (color, size, etc.)
- **`category_id`**: Product category identifier

#### Customer Feedback

- **`rating`**: Average customer rating
- **`total_reviews`**: Number of customer reviews

#### Product Badges

- **`badges`**: Array of promotional badges (free shipping, offers, etc.)

### Performance Features

#### Concurrent Processing

- **Semaphore-based Rate Limiting**: Controls concurrent requests to prevent server overload
- **Configurable Concurrency**: Adjustable maximum concurrent requests (default: 5)
- **Error Handling**: Robust error handling for individual page requests
- **Progress Tracking**: Real-time progress updates during scraping

#### Sequential vs Concurrent Modes

- **Sequential Mode**: Traditional page-by-page processing
- **Concurrent Mode**: Fast parallel processing with rate limiting

#### Rate Limiting

The scraper includes built-in rate limiting to respect Falabella Chile's server capabilities:

- Default: 5 concurrent requests
- Automatic retry mechanism for failed requests

### Data Types

The scraper uses structured data types for consistent output:

```python
@dataclass
class Product:
    id: str
    sku: str = ""
    name: str = ""
    brand: str = ""
    product_type: str = ""
    url: str = ""
    price: float = 0
    price_variants: List[Any] = field(default_factory=list)
    currency: str = "CLP"
    photos: List[Any] = field(default_factory=list)
    measurements: dict = field(default_factory=dict)
    discounts: dict = field(default_factory=dict)
    badges: List[Any] = field(default_factory=list)
    multipurpose_badges: List[Any] = field(default_factory=list)
    seller_id: str = ""
    seller_name: str = ""
    is_sponsored: bool = False
    is_best_seller: bool = False
    category_id: str = ""
    rating: float = 0.0
    total_reviews: int = 0
    variants: List[Any] = field(default_factory=list)
```

### Limitations

- **Rate Limiting**: Respects Falabella Chile's rate limits and terms of service
- **Page Limits**: Maximum pages configurable but subject to available results
- **Language**: Optimized for Spanish language content
- **Geographic**: Designed for Chilean market (CLP currency, Chilean shipping)

### Legal Disclaimer

This scraper is intended for public data extraction only. Ensure your usage complies with Falabella Chile's terms of service and applicable Chilean data protection regulations.

### Support

For technical support or questions about this scraper, please refer to the project documentation or contact the development team.

***

**Note**: This scraper is designed for legitimate business use cases and market research in the Chilean market. Please ensure compliance with all applicable laws and website terms of service.

# Actor input Schema

## `keywords` (type: `array`):

Enter the keywords to search for.

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

Enter the maximum number of pages to search for. (Default: 25)

## Actor input object example

```json
{
  "keywords": [
    "accesorios de niños",
    "ropa hombre",
    "calzado"
  ],
  "max_pages": 25
}
```

# 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": [
        "accesorios de niños",
        "ropa hombre",
        "calzado"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("datacach/falabella-products-search-chile").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": [
        "accesorios de niños",
        "ropa hombre",
        "calzado",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("datacach/falabella-products-search-chile").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 '{
  "keywords": [
    "accesorios de niños",
    "ropa hombre",
    "calzado"
  ]
}' |
apify call datacach/falabella-products-search-chile --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=datacach/falabella-products-search-chile",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Falabella Products Search Chile",
        "description": "The Falabella Chile scraper extracts product data using keywords, including prices, descriptions, discounts, and ratings. Perfect for market analysis and price comparison, with real-time data and easy export in CSV, Excel, or JSON formats.",
        "version": "0.1",
        "x-build-id": "i6P6SKQbk3weIMcfv"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/datacach~falabella-products-search-chile/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-datacach-falabella-products-search-chile",
                "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/datacach~falabella-products-search-chile/runs": {
            "post": {
                "operationId": "runs-sync-datacach-falabella-products-search-chile",
                "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/datacach~falabella-products-search-chile/run-sync": {
            "post": {
                "operationId": "run-sync-datacach-falabella-products-search-chile",
                "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": [
                    "keywords"
                ],
                "properties": {
                    "keywords": {
                        "title": "🌐 Keywords",
                        "type": "array",
                        "description": "Enter the keywords to search for.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "max_pages": {
                        "title": "🔗 Max Pages",
                        "minimum": 1,
                        "maximum": 50,
                        "type": "integer",
                        "description": "Enter the maximum number of pages to search for. (Default: 25)",
                        "default": 25
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
