# Versace Scraper (`aboo.script/versace-scraper`) Actor

⚡ Fast Versace scraper for any of 80+ country stores. No login, no API key. Scrape clothing, bags, shoes, jewelry and more by keyword, category, search or product URL: local prices, colors, sizes with stock, sold out status, materials, EAN and images. Perfect for luxury price monitoring.

- **URL**: https://apify.com/aboo.script/versace-scraper.md
- **Developed by:** [Aboo Script](https://apify.com/aboo.script) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.10 / 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/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

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

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Versace Scraper

![Versace Scraper](https://i.ibb.co/Vc9Q6KJ5/versace-banner.png)

**Versace Scraper** extracts official products from [Versace](https://www.versace.com/) into clean, structured data you can download as JSON, CSV, Excel, or HTML. Paste a Versace category, search, or product URL from any country store, or type a few keywords, and get the name, price, currency, color, sizes with stock, materials, and images of every product. No account or login required.

### Introduction

[Versace](https://www.versace.com/) is the official online store of the Italian luxury fashion house, selling clothing, bags, shoes, jewelry, eyewear, fragrances, and home décor in more than 80 country stores. Its prices, stock, and collections differ by country, which makes it a key source for luxury pricing and assortment data.

This actor collects the same public information you see in your browser and turns it into a ready-to-use dataset. You can run it once, schedule it to run daily, or connect it to your own tools.

### What data can you extract from Versace?

- 🏷️ Product name, product code, model code, brand, category, and full category path
- 💲 Price, formatted price, original price, sale flag, and currency of the country store
- 📦 Availability, sold out, pre-order, and "notify me" status
- 📏 Sizes with stock per size, low stock messages ("Only 1 available"), and barcodes (EAN)
- 🎨 Color and color code, plus every other color of the product with its link, price, and availability
- 🧵 Description, product details, material composition, and size & fit notes
- 🏅 Badges such as "New In" or "Fashion Show"
- 🖼️ High-resolution images
- 🌍 Country and language of the store, and the direct URL of each product

### Use Cases

- 📈 **Market research**: track Versace prices, new arrivals, and collections across categories and countries.
- 🕵️ **Competitor monitoring**: compare luxury prices and assortments with your own catalog or other brands.
- 💱 **Price comparison by country**: see how the same product is priced in the US, UK, Europe, the Middle East, and Asia.
- 📦 **Stock tracking**: follow sold out items, low stock sizes, and restocks.
- 🗂️ **Database building**: create your own searchable catalog of Versace products with images and materials.
- 🤖 **AI and automation**: feed clean, structured data into spreadsheets, dashboards, or AI workflows.

### How to scrape Versace step by step

1. Paste one or more Versace URLs into **Start URLs**, or type keywords into **Search queries**.
2. For search queries, choose the **Country store for search queries** and, if you like, **Sort search results by**.
3. Set **Maximum number of results** to how many products you want per URL or per query.
4. Click **Start** and wait for the run to finish.
5. Download your data in JSON, CSV, Excel, or HTML from the **Output** tab.

### Input

- **Start URLs**: Versace URLs to scrape from any country store. Supported pages: category pages (such as Women > Bags), search result pages, and single product pages. Any filters and sorting you apply on the website (such as color, print, or price order) are kept in the results. The country and language in the URL decide the prices, currency, and language of the results.
- **Search queries**: keywords to search on Versace, one per line, such as "medusa" or "barocco". Each query is scraped separately.
- **Maximum number of results**: how many products to collect for each start URL or search query. Set 0 for no limit.
- **Country store for search queries**: the country and language of the store used for search queries, written as in Versace URLs, for example `us/en`, `gb/en`, `it/it`, `fr/fr`, `ae/en`, or `de/de`. Start URLs keep their own country.
- **Sort search results by**: Recommended, Best sellers, Price: high to low, or Price: low to high. Applies to search queries only.

You can use start URLs, search queries, or both in the same run.

### Input Examples

Scrape a category page from Versace:

```json
{
  "startUrls": [{ "url": "https://www.versace.com/us/en/women/bags/" }],
  "maxResults": 5
}
```

Search by keywords in the US store:

```json
{
  "searchQueries": ["medusa"],
  "market": "us/en",
  "sortBy": "",
  "maxResults": 5
}
```

### Output

Each product color is saved as one item in the dataset. Here is an example of a single item:

```json
{
  "url": "https://www.versace.com/us/en/women/clothing/pants-shorts/leather-pants-black/1023785-1A17491_1B000.html",
  "id": "1023785-1A17491_1B000",
  "masterId": "1023785-1A17491",
  "name": "Leather Pants",
  "brand": "VERSACE",
  "category": "Pants & Shorts",
  "categories": ["Women", "Clothing", "Pants & Shorts"],
  "color": "Black",
  "colorCode": "1B000",
  "price": 4390,
  "priceFormatted": "$4,390.00",
  "listPrice": null,
  "listPriceFormatted": null,
  "onSale": false,
  "currency": "USD",
  "availability": "In Stock",
  "available": true,
  "soldOut": false,
  "preorder": false,
  "notifyMe": false,
  "sizes": [
    { "size": "36", "inStock": true, "stockMessage": "Only 1 available", "ean": "8059000015301" },
    { "size": "38", "inStock": true, "stockMessage": null, "ean": "8059000015288" },
    { "size": "46", "inStock": false, "stockMessage": null, "ean": "8059000015325" }
  ],
  "ean": null,
  "badge": "Fashion Show",
  "shortDescription": "Relaxed straight-leg plongé leather pants adjusted to a high waist when worn with a belt as shown on the model...",
  "description": "Relaxed straight-leg plongé leather pants adjusted to a high waist when worn with a belt as shown on the model...",
  "details": [
    "Medusa hardware",
    "Back leather patch",
    "Five-pocket design",
    "Outer composition: 100% Lambskin",
    "Lining: 100% Viscose"
  ],
  "composition": ["Outer composition: 100% Lambskin", "Lining: 100% Viscose"],
  "sizeAndFit": ["Straight-leg", "The model is 5'9\" / 1.75 m tall and wears size 38 IT"],
  "images": [
    "https://www.versace.com/dw/image/v2/BGWN_PRD/on/demandware.static/-/Sites-ver-master-catalog/default/dwc4b1dce6/original/90_1023785-1A17491_1B000_10_LeatherPants-Pants~~Shorts-Versace-online-store_1_1.jpg?sw=1200&q=85&strip=true"
  ],
  "colors": [
    {
      "id": "1023785-1A17491_1B000",
      "color": "Black",
      "url": "https://www.versace.com/us/en/women/clothing/pants-shorts/leather-pants-black/1023785-1A17491_1B000.html",
      "price": 4390,
      "currency": "USD",
      "availability": "In Stock"
    },
    {
      "id": "1023785-1A17491_1RE60",
      "color": "Red",
      "url": "https://www.versace.com/us/en/women/clothing/pants-shorts/leather-pants-red/1023785-1A17491_1RE60.html",
      "price": 4390,
      "currency": "USD",
      "availability": "In Stock"
    }
  ],
  "country": "US",
  "language": "en"
}
```

You can download the dataset in JSON, CSV, Excel, XML, or HTML, or access it through the Apify API.

### Notes

- Each color of a product is a separate item, the same way Versace lists them in categories. Other colors are also listed inside `colors`.
- Names, descriptions, categories, and colors are in the language of the store you scrape (for example Italian for `it/it`), and prices use that store's currency.
- Category paths are translated per language (for example `/it/it/donna/borse/`), so copy category URLs directly from the country store you want.
- `listPrice`, `listPriceFormatted`, and `onSale` are only filled while a product is discounted on the website.
- Products with a single size (most bags and accessories) have an empty `sizes` list and their barcode in `ean`; sized products have one barcode per size.
- Pages that are not product listings (home page, stories, customer service) and country codes that Versace does not offer are skipped with a warning.

### Why use the Versace Scraper?

- ✅ **No login needed**: works with public data only, so there is no account to manage.
- 🌍 **Every country store**: scrape the US, UK, European, Middle Eastern, and Asian stores with local prices and currencies.
- 🎯 **Keeps your filters**: paste any category or search URL from your browser and get exactly what you see there.
- 📏 **Stock per size**: see which sizes are available, almost gone, or sold out.
- 🧹 **Clean data**: prices are real numbers, text is free of HTML, and every product has absolute image and page links.
- 💸 **Pay for what you need**: set a result limit per URL or query and keep every run small and cheap.
- 🔄 **Ready for automation**: schedule runs, export to Google Sheets, or connect to Make, Zapier, and n8n.

### FAQ

#### How many results can I scrape?

You can set any number in **Maximum number of results**, or 0 for no limit. The actor keeps going until it reaches your limit or the end of the category or search results.

#### Do I need a Versace account?

No. The actor only collects publicly available data. You do not need to log in or provide any account details.

#### Can I compare prices between countries?

Yes. Add the same category or product URL from several country stores (for example `/us/en/`, `/gb/en/`, and `/it/it/`) as start URLs. Each item includes its `country`, `language`, and `currency`.

#### Can I scrape data on a schedule?

Yes. Use Apify Schedules to run the actor every hour, day, or week, and get fresh prices and stock automatically.

#### Why are some fields empty?

Some products simply do not show every piece of information, such as a badge or size & fit notes. When a field is not available on the website, it is returned as `null` or an empty list.

#### Can I request a new feature or filter?

Yes. Right now the actor supports start URLs, search queries, a country store, and sorting for searches. If you need other filters or inputs, get in touch and they can be added.

#### Can I get a custom or private version?

Yes. The actor can be customized for your workflow, delivered as a private version, or a new scraper can be built for a different website. Use the contact details below.

### Need to scrape other luxury and fragrance platforms?

- [Fragrantica Scraper](https://apify.com/aboo.script/fragrantica-scraper): perfumes with notes, accords, ratings, and perfumers from Fragrantica.

***

**Need help or want a custom solution?**

- 📧 Email: aboo.script@gmail.com
- 🧩 More scrapers: [Apify profile](https://apify.com/aboo.script)

### Image Credit

Image credit: [Versace](https://www.versace.com/)

# Actor input Schema

## `startUrls` (type: `array`):

Versace category, search or product URLs from any country store (for example https://www.versace.com/us/en/women/bags/). Filters and sorting in the URL are kept. The country and language of the URL decide the prices, currency and language of the results.

## `searchQueries` (type: `array`):

Keywords to search on Versace, for example "medusa" or "barocco". Each query is scraped separately in the selected country store.

## `maxResults` (type: `integer`):

Maximum number of products to scrape per start URL or search query. Set 0 for no limit.

## `market` (type: `string`):

Country and language of the Versace store used for search queries, written as in Versace URLs: "us/en", "gb/en", "it/it", "fr/fr", "ae/en", "jp/ja" and so on. Applies to search queries only; start URLs keep their own country.

## `sortBy` (type: `string`):

Sort order for search queries. Applies to search queries only; start URLs keep their own sorting.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.versace.com/us/en/women/bags/"
    }
  ],
  "searchQueries": [
    "medusa"
  ],
  "maxResults": 5,
  "market": "us/en",
  "sortBy": ""
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# 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 = {
    "startUrls": [
        {
            "url": "https://www.versace.com/us/en/women/bags/"
        }
    ],
    "searchQueries": [
        "medusa"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("aboo.script/versace-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 = {
    "startUrls": [{ "url": "https://www.versace.com/us/en/women/bags/" }],
    "searchQueries": ["medusa"],
}

# Run the Actor and wait for it to finish
run = client.actor("aboo.script/versace-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://www.versace.com/us/en/women/bags/"
    }
  ],
  "searchQueries": [
    "medusa"
  ]
}' |
apify call aboo.script/versace-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,aboo.script/versace-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/rhjzaW1cJHofGYD8A/builds/upTNJfWi34VYBcqUS/openapi.json
