# Rutube Shorts Scraper - Low-cost💲🔥📺🇷🇺 (`delectable_incubator/rutube-shorts-scraper-low-cost`) Actor

🎬🔍 Extract Rutube Shorts by keyword with ease. Collect short titles, channels, verified status, views, publish dates, age ratings, thumbnails, short URLs, channel URLs, and engagement data. Ideal for short-form content research, viral trend analysis, creator intelligence and video datasets. 📊🚀

- **URL**: https://apify.com/delectable\_incubator/rutube-shorts-scraper-low-cost.md
- **Developed by:** [Prime Scrape](https://apify.com/delectable_incubator) (community)
- **Categories:** Social media, Videos, Automation
- **Stats:** 1 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $0.00005 / actor start

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
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 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

<p align="center">
  <img src="https://i.ibb.co/jkNS73wX/readme.png" alt="Rutube Shorts Scraper" width="100%">
</p>

---

## 🎬🇷🇺 Rutube Shorts Scraper | Bulk Shorts Search Scraper | Apify Actor

### 🚀 Extract Rutube Shorts Data in Seconds (No Code)

The **Rutube Shorts Scraper (Apify Actor)** is a powerful, scalable, and SEO-optimized scraping tool designed to extract **Rutube Shorts search results** in bulk.

Scrape thousands of short videos across multiple keywords, collect structured creator and engagement data, and export everything for **viral trend monitoring, creator research, AI datasets, marketing intelligence, audience analysis, and automation workflows.**

---

## 🔥 Why This Rutube Shorts Scraper?

✔ Best Rutube Shorts scraper on Apify

✔ Supports **bulk keyword scraping (multi-search)** 🚀

✔ Fast & scalable Shorts extraction

✔ Automatic infinite scrolling

✔ Smart duplicate prevention

✔ Clean structured datasets

✔ JSON / CSV / Excel ready

✔ Ideal for creator intelligence

✔ Perfect for trend analysis

✔ No coding required

---

## 🎯 What This Scraper Does (Rutube Shorts Data Extraction)

This Apify Actor extracts real-time **Rutube Shorts search results** directly from Rutube.

#### 📌 Core Features

✅ Scrape Rutube Shorts

✅ Bulk keyword scraping (SEO BOOST 🚀)

✅ Infinite scroll automation

✅ Automatic end-of-results detection

✅ Extract Shorts titles

✅ Extract channel information

✅ Detect verified channels

✅ Extract view counts

✅ Extract publish dates

✅ Extract age ratings

✅ Extract thumbnail URLs

✅ Extract Shorts URLs

✅ Extract channel URLs

✅ Extract creator identifiers (Person ID)

✅ Clean structured dataset output

✅ High-speed extraction engine

---

## ⚡ Input Configuration (Simple & Powerful)

### 🔥 BULK KEYWORD MODE (SEO BOOST 🚀)

````

{
"keywords": \[
"iphone",
"музыка",
"новости",
"gaming",
"travel",
"food"
],
"maxitems\_per\_keyword": 100
}

```

---

## 📊 Extracted Shorts Data (Structured Output)

| Field | Description |
|------|-------------|
| keyword | Search keyword |
| title | Shorts title |
| channelName | Channel name |
| isVerified | Verification status |
| viewsText | Number of views |
| publishedAt | Publish date |
| ageRating | Age restriction |
| shortUrl | Direct Shorts URL |
| thumbnailUrl | Thumbnail image |
| channelUrl | Channel profile |
| personId | Creator identifier |

---

## 💡 Use Cases (High Demand SEO Keywords)

This Rutube Shorts scraper is perfect for:

📺 Rutube Shorts scraping

🔥 Viral Shorts monitoring

📊 Creator analytics

🎯 Influencer discovery

📈 Audience intelligence

🤖 AI training datasets

🏢 Marketing research

📡 Content monitoring

🔍 Competitive analysis

⚡ Bulk Shorts extraction

---

## 🚀 Key Features (Apify SEO Optimized)

⚡ Bulk keyword support

📌 Infinite scroll automation

🧠 Smart duplicate detection

📊 Structured JSON output

🔥 Fast extraction engine

🔁 Automatic retries

💾 Export-ready datasets

⚙️ Scalable cloud execution

🚀 Optimized for large datasets

---

## 📤 Output Formats Supported

✔ JSON

✔ CSV

✔ Excel (XLSX)

✔ XML

✔ HTML

---

## 📦 Example Output

```

{
"keyword": "музыка",
"title": "Лучший короткий клип 2025",
"channelName": "Music Channel",
"isVerified": true,
"viewsText": "125K просмотров",
"publishedAt": "2 дня назад",
"ageRating": "12+",
"shortUrl": "https://rutube.ru/shorts/xxxx/",
"thumbnailUrl": "https://...",
"channelUrl": "https://rutube.ru/channel/xxxx/",
"personId": "123456"
}

````

---

## 📊 Preconfigured Dataset Views

### 🔹 Overview

Complete Shorts overview including:

- Keyword
- Title
- Channel
- Views
- Published Date
- Age Rating
- Shorts URL

Perfect for complete Shorts search analysis.

---

### 🔹 By Channel

Analyze content grouped by:

- Channel Name
- Verification Status
- Channel URL
- Creator ID
- Views
- Titles

Perfect for creator intelligence.

---

### 🔹 Top Viewed Shorts

Quickly identify high-performing Shorts based on:

- Views
- Publish Date
- Channel

Ideal for:

- Viral trend detection
- Benchmarking
- Engagement comparison

---

## 🔥 Why This is the BEST Rutube Shorts Scraper on Apify?

✔ Optimized for Apify search ranking

✔ High-performance scraping engine

✔ Bulk keyword support (rare feature)

✔ Infinite scrolling support

✔ Structured datasets

✔ Enterprise-ready scalability

✔ Perfect for SEO visibility

✔ Built for automation

---

## 💸 Pricing

This scraper runs on a **pay-per-result pricing model**.

You only pay for successfully extracted records.

💳 **Price:** **$3.49 / 1,000 results**

---

## ❓ FAQ (SEO BOOST SECTION)

#### Can I scrape multiple keywords at once?

Yes — bulk keyword mode is fully supported.

#### Does it support Rutube Shorts?

Yes — it is specifically designed for Rutube Shorts search.

#### Does it automatically scroll?

Yes — the Actor automatically handles infinite scrolling.

#### Is coding required?

No — this is a 100% no-code Apify Actor.

#### Can I export the data?

Yes — JSON, CSV, Excel, XML and HTML are supported.

#### Can I monitor viral Shorts?

Absolutely. It is ideal for trend monitoring and creator analysis.

---

## ⚠️ Disclaimer

This tool is an independent data extraction solution and is **not affiliated with, endorsed by, or sponsored by Rutube**.

---

## 🔗 Related Actors

We are building a complete **PrimeScrape Intelligence Suite**.

👉 More powerful scrapers coming soon.

---

## 🌍 PrimeScrape Ecosystem

Built for data extraction, automation, AI datasets, lead generation, and market intelligence at scale.

📺 Video scraping

🎬 Shorts scraping

🏢 Company intelligence

📊 Market research

🤖 AI datasets

📈 Marketing analytics

⚙️ Automation pipelines

🌍 Large-scale cloud scraping

---

## 📬 Support

⭐⭐⭐⭐⭐ If this Actor saves you time, please consider leaving a **5-star review**.

Need a custom scraper or enterprise solution?

📩 Contact us directly through **Apify**.

# Actor input Schema

## `keywords` (type: `array`):

List of search keywords to scrape on Rutube Shorts. Each keyword maps to https://rutube.ru/search/?query=KEYWORD&content_type=shorts. Scroll-based pagination is handled automatically.
## `maxitems_per_keyword` (type: `integer`):

Maximum number of shorts to scrape per keyword. 

## Actor input object example

```json
{
  "keywords": [
    "iphone",
    "samsung",
    "музыка"
  ],
  "maxitems_per_keyword": 50
}
````

# Actor output Schema

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

No description

## `by_channel` (type: `string`):

No description

## `top_viewed` (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 = {
    "keywords": [
        "iphone",
        "samsung",
        "музыка"
    ],
    "maxitems_per_keyword": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("delectable_incubator/rutube-shorts-scraper-low-cost").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 = {
    "keywords": [
        "iphone",
        "samsung",
        "музыка",
    ],
    "maxitems_per_keyword": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("delectable_incubator/rutube-shorts-scraper-low-cost").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 '{
  "keywords": [
    "iphone",
    "samsung",
    "музыка"
  ],
  "maxitems_per_keyword": 50
}' |
apify call delectable_incubator/rutube-shorts-scraper-low-cost --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=delectable_incubator/rutube-shorts-scraper-low-cost",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Rutube Shorts Scraper - Low-cost💲🔥📺🇷🇺",
        "description": "🎬🔍 Extract Rutube Shorts by keyword with ease. Collect short titles, channels, verified status, views, publish dates, age ratings, thumbnails, short URLs, channel URLs, and engagement data. Ideal for short-form content research, viral trend analysis, creator intelligence and video datasets. 📊🚀",
        "version": "0.0",
        "x-build-id": "DXpvLJIIKhX67Cjcy"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/delectable_incubator~rutube-shorts-scraper-low-cost/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-delectable_incubator-rutube-shorts-scraper-low-cost",
                "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/delectable_incubator~rutube-shorts-scraper-low-cost/runs": {
            "post": {
                "operationId": "runs-sync-delectable_incubator-rutube-shorts-scraper-low-cost",
                "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/delectable_incubator~rutube-shorts-scraper-low-cost/run-sync": {
            "post": {
                "operationId": "run-sync-delectable_incubator-rutube-shorts-scraper-low-cost",
                "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": [
                    "keywords",
                    "maxitems_per_keyword"
                ],
                "properties": {
                    "keywords": {
                        "title": "Search Keywords 🔍",
                        "type": "array",
                        "description": "List of search keywords to scrape on Rutube Shorts. Each keyword maps to https://rutube.ru/search/?query=KEYWORD&content_type=shorts. Scroll-based pagination is handled automatically.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxitems_per_keyword": {
                        "title": "Maximum items per keyword 🔢",
                        "type": "integer",
                        "description": "Maximum number of shorts to scrape per keyword. ",
                        "default": 50
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
