# Clarks Category Scraper (`getdataforme/clarks-category-scraper`)

Clarks Category Scraper is an Apify Actor that extracts comprehensive product data from the Clarks website via keyword searches. It captures names, brands, SKUs, ratings, reviews, and more using Playwright for reliable, scalable scraping....

- **URL**: https://apify.com/getdataforme/clarks-category-scraper.md
- **Developed by:** [GetDataForMe](https://apify.com/getdataforme) (community)
- **Categories:** AI, Agents, E-commerce
- **Stats:** 1 total users, 1 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

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

# README

## Clarks Category Scraper

The Clarks Category Scraper is a powerful Apify Actor designed to extract detailed product information from the Clarks website based on user-defined search keywords. It leverages Playwright for reliable web scraping, ensuring high-quality data on shoes and accessories. This tool is ideal for e-commerce professionals, researchers, and businesses seeking accurate, up-to-date product insights to inform decisions and strategies.

### Features

- **Keyword-Based Search**: Easily scrape products by entering specific search terms like "shoes" or "boots" for targeted results.
- **Comprehensive Data Extraction**: Captures essential details including product names, brands, SKUs, GTINs, URLs, images, ratings, review counts, and full review data.
- **Paginated Scraping**: Supports scraping multiple pages to gather extensive datasets without manual intervention.
- **High Performance**: Utilizes Playwright Crawler for fast, headless browsing that handles dynamic content and anti-bot measures.
- **Structured Output**: Delivers clean, JSON-formatted data ready for analysis, export, or integration into other systems.
- **Configurable Limits**: Set maximum pages and crawl requests to control resource usage and avoid overloading the target site.
- **Reliable and Scalable**: Built for robustness, with error handling to manage site changes or temporary issues.

### Input Parameters

| Parameter | Type | Required | Description | Example |
|-----------|------|----------|-------------|---------|
| searchkeyword | string | Yes | Keywords to search for on the Clarks website, such as product types or categories. | "shoes" |
| maxpages | number | No | Maximum number of pages to scrape from search results. | 5 |
| maxCrawlRequests | number | No | The maximum number of requests the crawler will process to limit resource usage. | 10 |

### Example Usage

To run the Actor, provide input parameters in JSON format. Here's an example:

```json
{
  "searchkeyword": "shoes",
  "maxpages": 3,
  "maxCrawlRequests": 20
}
```

This will scrape up to 3 pages of shoe products, processing no more than 20 requests.

Example output (array of product objects):

```json
[
  {
    "name": "Roamer Stomp Toddler Tan",
    "brand": "Clarks Children's",
    "sku": "26183911",
    "gtin13": "5063421509915",
    "url": "https://www.clarks.com/en-gb/roamer-stomp-toddler/26183911-p",
    "image": "https://cdn.media.amplience.net/i/clarks/26183911_GW_1",
    "rating": "5.0",
    "reviewCount": "1",
    "reviews": [
      {
        "author": "Bianca",
        "rating": "5",
        "date": "2025-10-07T10:20:31.965Z",
        "review": "Cute little shoes, great quality, beautiful design ",
        "images": []
      }
    ]
  }
]
```

### Use Cases

- **Market Research and Analysis**: Gather data on product trends, pricing, and customer feedback to identify market gaps.
- **Competitive Intelligence**: Monitor Clarks' offerings to compare with competitors and track new releases.
- **Price Monitoring**: Track product prices and availability for dynamic pricing strategies in e-commerce.
- **Content Aggregation**: Collect product details and reviews for blogs, comparison sites, or affiliate marketing.
- **Academic Research**: Study consumer preferences and brand performance through review analysis.
- **Business Automation**: Automate data collection for inventory management or supplier negotiations.

### Installation and Usage

1. Search for "Clarks Category Scraper" 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 Actor outputs an array of JSON objects, each representing a product. Key fields include:

- `name`: Product title.
- `brand`: Associated brand (e.g., "Clarks Children's").
- `sku`: Stock keeping unit for identification.
- `gtin13`: Global trade item number.
- `url`: Direct link to the product page.
- `image`: URL of the product image.
- `rating`: Average customer rating.
- `reviewCount`: Number of reviews.
- `reviews`: Array of review objects with author, rating, date, text, and images.

This structured format ensures easy parsing and integration.

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

## `searchkeyword` (type: `string`):

Keywords to search for.

## `maxpages` (type: `number`):

Maximum number of pages to scrape.

## `maxCrawlRequests` (type: `number`):

The maximum number of requests the crawler will process.

## Actor input object example

```json
{
  "searchkeyword": "shoes",
  "maxpages": 5,
  "maxCrawlRequests": 10
}
```

# 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/clarks-category-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 = {}

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

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Clarks Category Scraper",
        "description": "Clarks Category Scraper is an Apify Actor that extracts comprehensive product data from the Clarks website via keyword searches. It captures names, brands, SKUs, ratings, reviews, and more using Playwright for reliable, scalable scraping....",
        "version": "0.0",
        "x-build-id": "zmyqpCdtXmzxpW0Ir"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/getdataforme~clarks-category-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-getdataforme-clarks-category-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~clarks-category-scraper/runs": {
            "post": {
                "operationId": "runs-sync-getdataforme-clarks-category-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~clarks-category-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-getdataforme-clarks-category-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": [
                    "searchkeyword"
                ],
                "properties": {
                    "searchkeyword": {
                        "title": "Enter Search Keyword",
                        "type": "string",
                        "description": "Keywords to search for.",
                        "default": "shoes"
                    },
                    "maxpages": {
                        "title": "Max Pages to Scrape",
                        "minimum": 1,
                        "type": "number",
                        "description": "Maximum number of pages to scrape.",
                        "default": 5
                    },
                    "maxCrawlRequests": {
                        "title": "Maximum Crawl Requests",
                        "minimum": 1,
                        "type": "number",
                        "description": "The maximum number of requests the crawler will process.",
                        "default": 10
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
