# Amazon Categories Spider (`getdataforme/amazon-categories-spider`) Actor

Effortlessly scrape comprehensive product data from Amazon category pages, including titles, prices, ratings, and delivery info. Ideal for market research, competitive intelligence, and automation. Features multi-category support, high reliability, fast performance, and structured JSON output.

- **URL**: https://apify.com/getdataforme/amazon-categories-spider.md
- **Developed by:** [GetDataForMe](https://apify.com/getdataforme) (community)
- **Categories:** AI, Automation, E-commerce
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $9.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

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

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

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

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

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

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

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

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

### Description

Effortlessly scrape comprehensive product data from Amazon category pages, including titles, prices, ratings, and delivery info. Ideal for market research, competitive intelligence, and automation. Features multi-category support, high reliability, fast performance, and structured JSON output.

---

## Amazon Categories Spider

The Amazon Categories Spider is a powerful Apify Actor designed to scrape product data from Amazon category pages efficiently and reliably. It extracts comprehensive details about products, including titles, prices, ratings, and delivery information, enabling users to gather valuable insights from Amazon's vast marketplace. This tool is ideal for businesses, researchers, and developers seeking automated data collection without manual effort.

### Features

- **Comprehensive Data Extraction**: Captures key product details such as titles, URLs, ratings, prices, discounts, and delivery options from Amazon category pages.
- **Multi-Category Support**: Allows scraping from multiple Amazon category URLs in a single run, supporting batch processing for efficiency.
- **High Reliability**: Built with robust error handling and anti-detection measures to ensure consistent data retrieval even from dynamic Amazon pages.
- **Fast Performance**: Optimized for speed, processing large categories quickly while respecting rate limits to avoid bans.
- **Structured Output**: Delivers clean, JSON-formatted data ready for analysis, export, or integration with other tools.
- **Flexible Configuration**: Easy-to-use input parameters for customizing scrapes to specific needs.
- **Scalable**: Suitable for small-scale research or large-scale data collection projects.

### Input Parameters

| Parameter   | Type  | Required | Description                                                                 | Example                                                                 |
|-------------|-------|----------|-----------------------------------------------------------------------------|-------------------------------------------------------------------------|
| CategoryUrl | array | Yes      | A list of Amazon category URLs to scrape. Each URL must be a valid HTTP/HTTPS link to an Amazon category page. Minimum 1 URL required. | ["https://www.amazon.in/s?i=electronics&rh=n%3A1389401031&s=popularity-rank&fs=true&ref=lp_1389401031_sar"] |

### Example Usage

To run the Amazon Categories Spider, provide input in JSON format. Here's an example:

```json
{
  "CategoryUrl": [
    "https://www.amazon.in/s?i=electronics&rh=n%3A1389401031&s=popularity-rank&fs=true&ref=lp_1389401031_sar"
  ]
}
````

The Actor will process the URLs and output a JSON array of product objects. Example output:

```json
[
  {
    "title": "Motorola Edge 70 Fusion (Pantone Silhouette, 8GB RAM, 128GB Storage) | 6.78\" 1.5K 144Hz AMOLED Display | Snapdragon 7s Gen 4 | 50MP Sony LYTIA 710 OIS Camera | 7000mAh Battery | 68W TurboPower |",
    "product_url": "https://www.amazon.in/Motorola-Pantone-Silhouette-Snapdragon-TurboPower/dp/B0GRMVNTDN/ref=sr_1_1?dib=eyJ2IjoiMSJ9.TLbzo2gmTifezrx5EavB7r_w3S5Z0myrI3zPvchnTIJxRX4ZFlSkJdHi7sO-O42tn6PHxvFHvIdrvUlOYv5U5A37QfO3SAn7237XBaOigzDE2l3S0bOwNfZUh-6W6Dy6MRtncIDHdG61fWtmMi2hy6XKoFvOds8t5qbew1IW2d40f4wP6r2CC4OJ4ZPaNP3fUu-zkPQ8rPeBQEOq9ksvgJ1kP5VICEyoDvyKRUANuwDHHxs-5BNtxp6pVc3sdmAlXqGFPWSq7GagoRlWUAIHdbVmkEg78c90hFNJD3HqcLA.7inWBEv9FwdIwJ3Ew6SD7lrTnb4zEd0iiC5ySd5qkqQ&dib_tag=se&qid=1775473585&s=electronics&sr=1-1",
    "rating_value": "3.3",
    "rating_text": "3.3 out of 5 stars",
    "total_ratings": "9",
    "bought_last_month": null,
    "deal_badge": null,
    "price": "₹26,999",
    "mrp": "₹42,999",
    "discount": "37% off",
    "offer": "Up to 5% back with Amazon Pay ICICI card",
    "free_delivery": "Wed, 8 Apr",
    "fastest_delivery": "Tomorrow, 7 Apr",
    "actor_id": "OXp369tWFk4q7Hbrz",
    "run_id": "sR1n1tKy5TcGRIwcA"
  },
  {
    "title": "vivo T5x 5G (Cyber Green, 6GB RAM, 128GB Storage) | 50MP AI Dual Camera | 32MP Selfie | 6.76\" FHD+ Display | 7200mAh Battery | Dimensity 7400-Turbo Processor | Fast Charging | Dual SIM Smartphone",
    "product_url": "https://www.amazon.in/vivo-Dimensity-7400-Turbo-Processor-Smartphone/dp/B0GTTXP6WF/ref=sr_1_2?dib=eyJ2IjoiMSJ9.TLbzo2gmTifezrx5EavB7r_w3S5Z0myrI3zPvchnTIJxRX4ZFlSkJdHi7sO-O42tn6PHxvFHvIdrvUlOYv5U5A37QfO3SAn7237XBaOigzDE2l3S0bOwNfZUh-6W6Dy6MRtncIDHdG61fWtmMi2hy6XKoFvOds8t5qbew1IW2d40f4wP6r2CC4OJ4ZPaNP3fUu-zkPQ8rPeBQEOq9ksvgJ1kP5VICEyoDvyKRUANuwDHHxs-5BNtxp6pVc3sdmAlXqGFPWSq7GagoRlWUAIHdbVmkEg78c90hFNJD3HqcLA.7inWBEv9FwdIwJ3Ew6SD7lrTnb4zEd0iiC5ySd5qkqQ&dib_tag=se&qid=1775473585&s=electronics&sr=1-2",
    "rating_value": "1.0",
    "rating_text": "1.0 out of 5 stars",
    "total_ratings": "1",
    "bought_last_month": null,
    "deal_badge": null,
    "price": "₹18,999",
    "mrp": "₹28,999",
    "discount": "34% off",
    "offer": "Up to 5% back with Amazon Pay ICICI card",
    "free_delivery": "Wed, 8 Apr",
    "fastest_delivery": "Tomorrow, 7 Apr",
    "actor_id": "OXp369tWFk4q7Hbrz",
    "run_id": "sR1n1tKy5TcGRIwcA"
  },
  {
    "title": "Xiaomi Focus Pen Pro | 16384 Levels of Pressure Sensitivity | Less Than 1ms of Ultra Low Latency",
    "product_url": "https://www.amazon.in/Xiaomi-Levels-Pressure-Sensitivity-Latency/dp/B0GQ3D53LZ/ref=sr_1_3?dib=eyJ2IjoiMSJ9.TLbzo2gmTifezrx5EavB7r_w3S5Z0myrI3zPvchnTIJxRX4ZFlSkJdHi7sO-O42tn6PHxvFHvIdrvUlOYv5U5A37QfO3SAn7237XBaOigzDE2l3S0bOwNfZUh-6W6Dy6MRtncIDHdG61fWtmMi2hy6XKoFvOds8t5qbew1IW2d40f4wP6r2CC4OJ4ZPaNP3fUu-zkPQ8rPeBQEOq9ksvgJ1kP5VICEyoDvyKRUANuwDHHxs-5BNtxp6pVc3sdmAlXqGFPWSq7GagoRlWUAIHdbVmkEg78c90hFNJD3HqcLA.7inWBEv9FwdIwJ3Ew6SD7lrTnb4zEd0iiC5ySd5qkqQ&dib_tag=se&qid=1775473585&s=electronics&sr=1-3",
    "rating_value": "3.4",
    "rating_text": "3.4 out of 5 stars",
    "total_ratings": "25",
    "bought_last_month": null,
    "deal_badge": null,
    "price": "₹5,999",
    "mrp": "₹8,999",
    "discount": "33% off",
    "offer": "Up to 5% back with Amazon Pay ICICI card",
    "free_delivery": "Wed, 8 Apr",
    "fastest_delivery": "Tomorrow 8am - 12pm",
    "actor_id": "OXp369tWFk4q7Hbrz",
    "run_id": "sR1n1tKy5TcGRIwcA"
  }
]
```

### Use Cases

- **Market Research**: Analyze product trends, pricing strategies, and customer preferences across Amazon categories.
- **Competitive Intelligence**: Monitor competitors' offerings, prices, and ratings to inform business decisions.
- **Price Monitoring**: Track price changes, discounts, and deals for dynamic pricing strategies.
- **Content Aggregation**: Collect product data for blogs, comparison sites, or e-commerce platforms.
- **Academic Research**: Gather data for studies on consumer behavior, e-commerce trends, or market analysis.
- **Business Automation**: Automate data feeds for inventory management, sales forecasting, or marketing campaigns.

### Installation and Usage

1. Search for "Amazon Categories 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 a JSON array of objects, each representing a product from the scraped category. Key fields include:

- `title`: Product name and specifications.
- `product_url`: Direct link to the product page.
- `rating_value` and `rating_text`: Numerical and textual ratings.
- `total_ratings`: Number of customer reviews.
- `price` and `mrp`: Current price and maximum retail price.
- `discount`: Percentage off.
- `offer`: Any promotional offers.
- `free_delivery` and `fastest_delivery`: Shipping details.
- `actor_id` and `run_id`: Metadata for the scrape run.

Some fields like `bought_last_month` or `deal_badge` may be null if not available.

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

## `CategoryUrl` (type: `array`):

The category url for the spider.

## `itemLimit` (type: `integer`):

Specifies the maximum number of items to process.

## Actor input object example

```json
{
  "CategoryUrl": [
    "https://www.amazon.in/s?i=electronics&rh=n%3A1389401031&s=popularity-rank&fs=true&ref=lp_1389401031_sar"
  ],
  "itemLimit": 20
}
```

# Actor output Schema

## `results` (type: `string`):

Scraped data items from dataset

# 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 = {
    "itemLimit": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("getdataforme/amazon-categories-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 = { "itemLimit": 20 }

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

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Amazon Categories Spider",
        "description": "Effortlessly scrape comprehensive product data from Amazon category pages, including titles, prices, ratings, and delivery info. Ideal for market research, competitive intelligence, and automation. Features multi-category support, high reliability, fast performance, and structured JSON output.",
        "version": "0.0",
        "x-build-id": "Yauud6XSyJBYigCh7"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/getdataforme~amazon-categories-spider/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-getdataforme-amazon-categories-spider",
                "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~amazon-categories-spider/runs": {
            "post": {
                "operationId": "runs-sync-getdataforme-amazon-categories-spider",
                "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~amazon-categories-spider/run-sync": {
            "post": {
                "operationId": "run-sync-getdataforme-amazon-categories-spider",
                "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": {
                    "CategoryUrl": {
                        "title": "Category Url",
                        "minItems": 1,
                        "type": "array",
                        "description": "The category url for the spider.",
                        "default": [
                            "https://www.amazon.in/s?i=electronics&rh=n%3A1389401031&s=popularity-rank&fs=true&ref=lp_1389401031_sar"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "itemLimit": {
                        "title": "Item Limit",
                        "type": "integer",
                        "description": "Specifies the maximum number of items to process.",
                        "default": 20
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
