# Superbalist Product Search Scraper (`stealth_mode/superbalist-product-search-scraper`) Actor

Scrape Superbalist.com product search results with precision. Collect 200+ items per page including prices, designer names, badges, sale status, and ranking data — perfect for price monitoring, competitor analysis, and fashion e-commerce research.

- **URL**: https://apify.com/stealth\_mode/superbalist-product-search-scraper.md
- **Developed by:** [Stealth mode](https://apify.com/stealth_mode) (community)
- **Categories:** Developer tools, E-commerce, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.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.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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.

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

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

## Superbalist Product Search Scraper: Extract Fashion & Beauty Catalog Data Fast

---

### What Is Superbalist.com?

Superbalist is a leading African fashion and beauty e-commerce platform offering curated collections across women's, men's, and kids' categories. The site hosts thousands of branded products with dynamic search, filtering, and pagination. Extracting search results manually is inefficient — the **Superbalist Product Search Scraper** automates the collection of product listing pages, capturing structured data across multiple attributes per item.

---

### Overview

The **Superbalist Product Search Scraper** extracts product search result pages from Superbalist.com, delivering clean, structured records ideal for:

- **Price monitoring platforms** tracking competitor pricing and promotions
- **Fashion retailers** benchmarking market trends and designer presence
- **E-commerce researchers** analyzing product catalogs and merchandising strategies
- **Aggregators and comparison sites** building product databases
- **Marketing teams** monitoring sale events, badges, and promotional activity

Key features include pagination support, flexible item limits, robust error handling, and comprehensive product metadata covering pricing, designer info, sale status, and visual assets.

---

### Input Format

The scraper accepts a JSON configuration:

```json
{
  "urls": [
    "https://superbalist.com/browse/women/beauty?page=2"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 200
}
````

| Field | Type | Description |
|---|---|---|
| `urls` | Array of strings | Direct links to Superbalist product search pages. Include category filters and page numbers as needed (e.g., `/browse/women/beauty?page=1`) |
| `max_items_per_url` | Integer | Maximum number of products to extract per URL. Default is `20`; increase to `200` for comprehensive collection |
| `ignore_url_failures` | Boolean | If `true`, the scraper continues if one or more URLs fail, ensuring partial results rather than complete failure |

**Example URLs:**

- `https://superbalist.com/browse/women/beauty`
- `https://superbalist.com/browse/men/shoes?page=3`
- `https://superbalist.com/browse/kids/all`

***

### Output Format

**Sample Output Record:**

```json
{
  "asset": {
    "aspect_ratio": 1.44,
    "base_ssl_url": "https://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996714/original.jpg",
    "base_url": "http://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996714/original.jpg",
    "crop_strategy": "",
    "default_serve_extension": "jpg",
    "mime_type": "image/jpeg",
    "type": "PRODUCT IMAGE"
  },
  "assets": [
    {
      "aspect_ratio": 1.44,
      "base_ssl_url": "https://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996714/original.jpg",
      "base_url": "http://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996714/original.jpg",
      "crop_strategy": "",
      "default_serve_extension": "jpg",
      "mime_type": "image/jpeg",
      "type": "PRODUCT IMAGE"
    },
    {
      "aspect_ratio": 1.44,
      "base_ssl_url": "https://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996716/original.jpg",
      "base_url": "http://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996716/original.jpg",
      "crop_strategy": "",
      "default_serve_extension": "jpg",
      "mime_type": "image/jpeg",
      "type": "PRODUCT IMAGE"
    },
    {
      "aspect_ratio": 1.44,
      "base_ssl_url": "https://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996717/original.jpg",
      "base_url": "http://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996717/original.jpg",
      "crop_strategy": "",
      "default_serve_extension": "jpg",
      "mime_type": "image/jpeg",
      "type": "PRODUCT IMAGE"
    },
    {
      "aspect_ratio": 1.44,
      "base_ssl_url": "https://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996715/original.jpg",
      "base_url": "http://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996715/original.jpg",
      "crop_strategy": "",
      "default_serve_extension": "jpg",
      "mime_type": "image/jpeg",
      "type": "PRODUCT IMAGE"
    },
    {
      "aspect_ratio": 1.44,
      "base_ssl_url": "https://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996718/original.jpg",
      "base_url": "http://assets.superbalistcdn.co.za/{size}filters:quality({quality}):format({extension})/2996718/original.jpg",
      "crop_strategy": "",
      "default_serve_extension": "jpg",
      "mime_type": "image/jpeg",
      "type": "PRODUCT IMAGE"
    }
  ],
  "badges": [],
  "designer_name": "Miss Black",
  "id": 953922,
  "indicators": [
    {
      "class": "on-sale",
      "enabled": true,
      "hex": "#da1900",
      "text": "SALE",
      "type": "badge"
    }
  ],
  "is_on_sale": true,
  "organic_ranking": true,
  "path": "/women/shoes/pumps-flats/quebec7-sneaker-black/953922",
  "price_range": {
    "has_discount": true,
    "max": {
      "barcode": "00AC-A559-B04C",
      "discount": "0.00",
      "has_discount": false,
      "price": "99.00",
      "retail_price": "99.00"
    },
    "min": {
      "barcode": "00AC-A559-B04C",
      "discount": "80.00",
      "has_discount": true,
      "price": "99.00",
      "retail_price": "499.00"
    },
    "sku_prices_differs": false
  },
  "publish_date": 1670191200,
  "ribbons": [],
  "short_name": "Quebec7 sneaker - black",
  "variations_label": "",
  "from_url": "https://superbalist.com/search?q=shoe"
}
```

Each product returned includes 15+ fields capturing pricing, branding, availability, and merchandising data:

#### Product Identification & Branding

| Field | Description & Purpose |
|---|---|
| `ID` | Unique Superbalist product identifier; use for deduplication and linking to other databases |
| `Short Name` | Product title or short description displayed in search results |
| `Designer Name` | Brand or designer associated with the product; critical for brand-level analysis |
| `Path` | URL path to the product detail page; enables linking back to Superbalist |

#### Pricing & Availability

| Field | Description & Purpose |
|---|---|
| `Price Range` | Current product price or price span (if variants exist); essential for price monitoring and competitive analysis |
| `Is On Sale` | Boolean flag indicating active promotion; used to track discount activity and seasonal trends |
| `Variations Label` | Description of available variants (size, color, etc.); helps identify product breadth and options |

#### Visual & Merchandising

| Field | Description & Purpose |
|---|---|
| `Asset` | Primary product image URL or asset identifier; used for gallery displays and visual search feeds |
| `Assets` | Array of product image URLs; supports multi-image galleries in aggregator platforms |
| `Badges` | Visual labels such as "New," "Trending," or "Limited Edition"; indicates merchandising priority |
| `Ribbons` | Promotional ribbons or tags (e.g., "Flash Sale," "Exclusive"); captures time-sensitive marketing signals |

#### Ranking & Metadata

| Field | Description & Purpose |
|---|---|
| `Organic Ranking` | Product position in search results; tracks visibility and algorithmic rank for SEO/merchandising insights |
| `Indicators` | Status indicators such as stock level or rating; used to filter or prioritize products |
| `Publish Date` | Product listing publication date; useful for age-based analysis and trend tracking |

***

### How to Use

1. **Identify target URLs** — Navigate Superbalist by category, sub-category, and page number. Copy full URLs from your browser.
2. **Build your URL list** — Add URLs to the `urls` array. Include page parameters for pagination (e.g., `?page=1`, `?page=2`).
3. **Configure item limits** — Set `max_items_per_url` to the number of products per page (e.g., `200` for comprehensive collection).
4. **Enable error tolerance** — Set `ignore_url_failures: true` to ensure the scraper completes even if a page fails to load.
5. **Execute the scrape** — Start the actor and monitor progress in the run logs.
6. **Export data** — Download results in JSON, CSV, or Excel format for analysis.

**Best practices:**

- Test with a single URL first to verify output structure.
- Use descriptive search URLs (e.g., with filters) to target specific product segments.
- Set `max_items_per_url` conservatively (50–100) for frequent runs to avoid rate limiting.

***

### Use Cases & Business Value

- **Price intelligence:** Monitor competitor pricing, discounts, and sale timing in real-time.
- **Product trend analysis:** Identify which designers, categories, and badges dominate search results.
- **Market research:** Build datasets on fashion e-commerce pricing strategies and inventory trends.
- **Content feeds:** Populate product aggregator sites with current Superbalist inventory and metadata.
- **Promotional tracking:** Detect new badges, ribbons, and sale flags to identify marketing campaigns.

By automating search result extraction, this scraper transforms hours of manual browsing into actionable, machine-readable data that feeds business intelligence, competitive monitoring, and content platforms.

***

### Conclusion

The **Superbalist Product Search Scraper** empowers retailers, researchers, and analysts to capture fashion and beauty product data at scale. With comprehensive output across pricing, branding, and merchandising fields, it delivers the insights needed to stay competitive in fast-moving e-commerce markets. Start scraping today and unlock actionable intelligence from one of Africa's largest online fashion platforms.

# Actor input Schema

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

Add the URLs of the product search 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://superbalist.com/browse/women/beauty?page=2"
  ],
  "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://superbalist.com/browse/women/beauty?page=2"
    ],
    "ignore_url_failures": true,
    "max_items_per_url": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("stealth_mode/superbalist-product-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://superbalist.com/browse/women/beauty?page=2"],
    "ignore_url_failures": True,
    "max_items_per_url": 20,
}

# Run the Actor and wait for it to finish
run = client.actor("stealth_mode/superbalist-product-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://superbalist.com/browse/women/beauty?page=2"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20
}' |
apify call stealth_mode/superbalist-product-search-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Superbalist Product Search Scraper",
        "description": "Scrape Superbalist.com product search results with precision. Collect 200+ items per page including prices, designer names, badges, sale status, and ranking data — perfect for price monitoring, competitor analysis, and fashion e-commerce research.",
        "version": "0.0",
        "x-build-id": "3HidL9IdBfaFi1bwR"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/stealth_mode~superbalist-product-search-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-stealth_mode-superbalist-product-search-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/stealth_mode~superbalist-product-search-scraper/runs": {
            "post": {
                "operationId": "runs-sync-stealth_mode-superbalist-product-search-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/stealth_mode~superbalist-product-search-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-stealth_mode-superbalist-product-search-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",
                "properties": {
                    "urls": {
                        "title": "URLs of the product search list urls to scrape",
                        "type": "array",
                        "description": "Add the URLs of the product search list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "ignore_url_failures": {
                        "title": "Continue running even if some URLs fail to be scraped",
                        "type": "boolean",
                        "description": "If true, the scraper will continue running even if some URLs fail to be scraped."
                    },
                    "max_items_per_url": {
                        "title": "Max items per URL",
                        "type": "integer",
                        "description": "The maximum number of items to scrape per URL."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
