# Russian Marketplace Scraper (`devcake/russian-marketplace-scraper`) Actor

Scrape product listings from Russia’s leading online marketplaces - Wildberries, Ozon, Yandex Market, and Avito. Get product data by keyword for sourcing and market analysis.

- **URL**: https://apify.com/devcake/russian-marketplace-scraper.md
- **Developed by:** [devcake](https://apify.com/devcake) (community)
- **Categories:**
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 1 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/actors/running/actors-in-store.md#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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

## Russian Marketplace Product & Price Data

Collect ecommerce product data from **Avito, Wildberries, Yandex Market, Ozon Russia, or AliExpress Russia** with one simple search. This ecommerce product scraper turns a product keyword into an organized, ready-to-download table of listings, prices, sellers, ratings, availability, images, and other marketplace details.

Use it to research a market, compare offers, review competitors, or build repeatable snapshots—without juggling a separate scraper for every Russian marketplace.

### 🛍️ What can you do?

- 🔎 Search one, several, or all supported marketplaces for a product, model, brand, or category.
- 💰 Compare current prices, original prices, and discounts.
- 🏷️ Review brands, sellers, categories, and available stock.
- ⭐ See ratings, review counts, and sales information when displayed.
- 🚚 Check delivery and location details when available.
- 🖼️ Collect product images and direct links to each offer.
- 📊 Keep the marketplace search position for every result.
- 📥 Download the product data for spreadsheets, reports, or further analysis.

Each run stays focused: choose the marketplaces, enter one product search, and decide how many products you want to collect from each marketplace.

### 🌐 Which marketplaces are supported?

| Marketplace | Useful information you may receive |
|---|---|
| **Avito** | Listings, prices, sellers, locations, descriptions, and images |
| **Wildberries** | Products, prices, brands, sellers, ratings, stock, sales, and images |
| **Yandex Market** | Products, prices, sellers, ratings, availability, and delivery |
| **Ozon Russia** | Products, prices, discounts, ratings, reviews, and images |
| **AliExpress Russia** | Products, stores, prices, discounts, sales, delivery, ratings, and images |

The exact details depend on what each selected marketplace shows publicly for a product. Missing information is simply left out of the results.

### 🎯 Who is it for?

- **Ecommerce teams** researching prices, sellers, brands, and product ranges.
- **Pricing analysts** building competitor price monitoring snapshots.
- **Brands and sellers** checking how products appear in marketplace search.
- **Market researchers** exploring visible assortments, prices, and positioning.
- **Agencies and consultants** preparing marketplace comparisons for clients.
- **Spreadsheet users** who want structured product data instead of manual copy-and-paste work.

### 💡 Popular use cases

#### 💰 Competitor price monitoring

Repeat the same search over time and compare saved results. You can review prices, discounts, sellers, stock, ratings, and search positions to spot changes. Each run creates a new snapshot that you can use in your analysis.

#### 🔄 Compare prices across marketplaces

Select Avito, Wildberries, Yandex Market, Ozon Russia, and AliExpress Russia together to run the same product phrase across all five. Their results are saved in one table with the source marketplace and search position on every row.

#### 🧭 Research a product market

Search a product category, brand, or model to explore the visible assortment. Review which products appear first, which sellers are active, how prices vary, and what ratings or discounts are shown.

#### 🏷️ Study brands and sellers

Use broader searches to discover prominent brands and sellers within a category. Narrower model searches can help you review competing offers for a more specific product.

#### 📥 Export products to CSV

Turn marketplace search results into a table you can download and open in a spreadsheet. This is useful for price reviews, client reports, catalog research, and custom analysis.

### 🚀 How to get your product data

1. Choose one or more of **Avito, Wildberries, Yandex Market, Ozon Russia, and AliExpress Russia**.
2. Enter one product search, such as `iPhone 15 256 GB` or `robot vacuum cleaner`.
3. Choose the maximum number of products to save from each marketplace.
4. Click **Run**.
5. Review the product table or download it for further work.

For your first search, start with 30 products. Once you are happy with the results, increase the limit for a broader market view.

### 🎛️ What do you need to enter?

| Input | What to choose | Example |
|---|---|---|
| **Marketplaces** | One or more marketplaces to search | Ozon Russia + Wildberries |
| **Search keywords** | One product, model, brand, or category | iPhone 15 |
| **Max products** | The highest number of products to save per marketplace | 100 |

With the example above, the run saves up to 100 Ozon products and 100 Wildberries products matching `iPhone 15`.

### 📊 What data will you receive?

| Data group | Available details |
|---|---|
| **Product** | Title, product ID, description, category, and direct link |
| **Pricing** | Current price, displayed currency, original price, and discount |
| **Seller** | Seller or store name and location when shown |
| **Popularity** | Rating, review count, and sold count when shown |
| **Availability** | Stock and delivery information when shown |
| **Media** | Main image and additional product images |
| **Search context** | Marketplace, search keywords, result position, and collection time |

Products are returned in marketplace search order, making it easy to see which offers appeared first for your chosen keywords.

### 📦 JSON output examples

Each product is saved as one JSON object. The examples below show one representative product from each marketplace. Values are illustrative, and fields that are not available for a particular product are omitted automatically.

#### 🟢 Avito

```json
{
  "marketplace": "avito",
  "id": 123,
  "title": "iPhone 15",
  "url": "https://www.avito.ru/moskva/telefony/iphone_15_123",
  "description": "Like new",
  "price": 50000,
  "price_formatted": "50 000 ₽",
  "currency": "RUB",
  "category": {
    "id": 84,
    "name": "Телефоны",
    "slug": "telefony",
    "root_id": 6
  },
  "location": {
    "id": 653240,
    "name": "Москва",
    "address": "Москва, Тверская улица",
    "latitude": 55.75,
    "longitude": 37.61
  },
  "seller": {
    "name": "Seller",
    "rating": 4.9,
    "rating_summary": "20 отзывов"
  },
  "image_url": "https://img.example/big.jpg",
  "badges": ["Цена ниже рыночной"],
  "search_keyword": "iphone",
  "rank": 1,
  "scraped_at": "2026-08-24T12:00:00+00:00"
}
```

#### 🟣 Wildberries

```json
{
  "marketplace": "wildberries",
  "id": "1329249392",
  "title": "iPhone 15 256 GB",
  "url": "https://www.wildberries.ru/catalog/1329249392/detail.aspx",
  "price": 42002,
  "price_formatted": "42 002 ₽",
  "currency": "RUB",
  "original_price": 100847,
  "discount_percent": 58.35,
  "brand": "Apple",
  "seller": {
    "name": "Public seller"
  },
  "seller_name": "Public seller",
  "stock": 3,
  "rating": 4.8,
  "review_count": 125,
  "search_keyword": "iphone",
  "rank": 1,
  "scraped_at": "2026-08-24T12:00:00+00:00"
}
```

#### 🔴 Yandex Market

```json
{
  "marketplace": "yandex_market",
  "id": "offer-1",
  "title": "Apple iPhone 15",
  "url": "https://market.yandex.ru/card/apple-iphone-15/102322319901?do-waremd5=offer-1",
  "price": 64841,
  "price_formatted": "64 841 ₽",
  "currency": "RUB",
  "original_price": 88992,
  "seller": {
    "name": "Public shop",
    "shop_id": "123"
  },
  "seller_name": "Public shop",
  "stock": 10,
  "rating": 4.9,
  "review_count": 154,
  "image_url": "https://avatars.mds.yandex.net/get-mpic/1/image/orig",
  "search_keyword": "iphone",
  "rank": 1,
  "scraped_at": "2026-08-24T12:00:00+00:00"
}
```

#### 🔵 Ozon Russia

```json
{
  "marketplace": "ozon",
  "id": "1681720585",
  "title": "Apple Смартфон iPhone 15 / 128 ГБ",
  "url": "https://www.ozon.ru/product/apple-iphone-15-1681720585/",
  "price": 47307,
  "price_formatted": "47 307 ₽",
  "currency": "RUB",
  "original_price": 67412,
  "discount_percent": 29,
  "rating": 5.0,
  "review_count": 3244,
  "image_url": "https://ir.ozone.ru/one.jpg",
  "search_keyword": "iphone",
  "rank": 1,
  "scraped_at": "2026-08-24T12:00:00+00:00"
}
```

#### 🟠 AliExpress Russia

```json
{
  "marketplace": "aliexpress_ru",
  "id": "1005006220239858",
  "title": "Смартфон Apple iPhone 12 mini 128 ГБ",
  "url": "https://aliexpress.ru/item/1005006220239858.html",
  "price": 44990,
  "price_formatted": "44 990 ₽",
  "currency": "RUB",
  "original_price": 52990,
  "discount_percent": 15,
  "seller": {
    "name": "Example Store",
    "rating": 4.8,
    "is_official": true
  },
  "seller_name": "Example Store",
  "sold_count": 1200,
  "delivery": "Бесплатная доставка",
  "rating": 4.7,
  "image_url": "https://ae-pic-a1.aliexpress-media.com/kf/a.jpg",
  "search_keyword": "iphone",
  "rank": 1,
  "scraped_at": "2026-08-24T12:00:00+00:00"
}
```

### 💳 How much does it cost?

The cost depends mainly on the marketplace and the number of products requested. Start with a small result set to review the data, then increase the limit when you need wider coverage.

Check the **Pricing** tab for the current price before running a large search.

### ⚠️ Good to know

- One run searches **one, several, or all marketplaces with one product phrase**.
- Results reflect the marketplace information available when the search is performed.
- The requested maximum applies separately to each marketplace, but some searches may return fewer products.
- Available fields vary by marketplace and product.
- Products from different marketplaces are not automatically matched as identical items.

### ❓ Frequently asked questions

#### What is ecommerce product data scraping?

Ecommerce product data scraping means collecting product information that is visible on online shopping pages and organizing it into structured results. Here, that can include titles, prices, sellers, ratings, availability, images, links, and search positions from supported Russian marketplaces.

#### How to track competitor pricing?

Run the same focused product search regularly and save each result set. Compare the product names, sellers, prices, discounts, availability, and search positions across dates. For cleaner comparisons, keep the marketplace selection, keywords, and per-marketplace product limit consistent between runs.

#### How do you do market research for a product?

Start with a broad category search to understand the visible assortment, brands, sellers, and price range. Then run narrower searches for specific models or competitors. Compare the downloaded results to identify price differences, popular offers, rating patterns, and changes in availability.

#### How do I export data as a CSV file?

After the run finishes, open the product results and choose CSV as the download format. The file can then be opened in spreadsheet tools for filtering, comparison, reporting, or further market analysis.

# Actor input Schema

## `marketplaces` (type: `array`):

Choose one or more marketplaces to analyze. Select all five to compare the same search everywhere in one run.

## `searchKeyword` (type: `string`):

Enter one product search, for example “iPhone 15 256 GB”.

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

Choose the maximum products to save from each selected marketplace. For example, 20 across five marketplaces can save up to 100 products. Keep this low for your first run.

## Actor input object example

```json
{
  "marketplaces": [
    "avito"
  ],
  "searchKeyword": "iPhone 15",
  "maxResults": 30
}
```

# Actor output Schema

## `dataset` (type: `string`):

Products returned for the selected marketplaces and search keywords.

## `traffic` (type: `string`):

Aggregate and per-marketplace traffic, run status, the active cost guard, and normalized 1,000-product projections.

# 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 = {
    "searchKeyword": "iPhone 15",
    "maxResults": 30
};

// Run the Actor and wait for it to finish
const run = await client.actor("devcake/russian-marketplace-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 = {
    "searchKeyword": "iPhone 15",
    "maxResults": 30,
}

# Run the Actor and wait for it to finish
run = client.actor("devcake/russian-marketplace-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 '{
  "searchKeyword": "iPhone 15",
  "maxResults": 30
}' |
apify call devcake/russian-marketplace-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,devcake/russian-marketplace-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/VE9zAdAhJF7b6VkJo/builds/al4e9dvJnx9ftzoba/openapi.json
