Yandex (Яндекс) Search Results Parser avatar

Yandex (Яндекс) Search Results Parser

Pricing

from $10.57 / 1,000 yandex results

Go to Apify Store
Yandex (Яндекс) Search Results Parser

Yandex (Яндекс) Search Results Parser

Parse public Yandex search results for SEO and market research. Query by keyword or URL and export titles, URLs, snippets, domains, ads, pagination, region, and language metadata.

Pricing

from $10.57 / 1,000 yandex results

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

12 days ago

Last modified

Features

Limited permissions

Share

Free plan limit: Free-plan users can receive up to 5 result records per run. Paid-plan and local/unknown runs retain the Actor's existing limits.

Parse public Yandex (Яндекс) search results into one flat JSON record per result. Use it for SEO research, SERP analysis, rank investigations, competitor discovery, and market research. The Actor accepts keyword queries or existing public yandex.com, yandex.ru, and yandex.com.tr search URLs, supports bounded pagination and region/language hints, and keeps the original search URL for traceability.

What this Yandex search scraper extracts

Each result row includes:

FieldMeaning
query and rankThe query that produced the row and its one-based rank on the source page.
title and urlThe visible result title and direct destination URL. Common Yandex redirect links are unwrapped.
snippet and displayedUrlVisible result summary and breadcrumb/display URL when available.
sourceDomainNormalized destination hostname for domain-level analysis.
resultType and isAdOrganic, ad, video, or other classification.
pageNumber and sourceUrlPagination position and the exact Yandex search URL used.
breadcrumbs, sitelinks, dateTextAdditional visible SERP metadata when present.

The schema is stable across rows, with nullable fields used when Yandex does not expose a value.

Example input

{
"searchQueries": ["купить ноутбук", "AI news"],
"domain": "yandex.com.tr",
"language": "all",
"maxResults": 25,
"maxPagesPerQuery": 2
}

Or pass an existing public result URL:

{
"startUrls": [
{ "url": "https://yandex.ru/search/?text=купить+ноутбук&lr=213" }
],
"maxResults": 20
}

Output

The default dataset contains query, rank, title, direct url, displayedUrl, snippet, sourceDomain, breadcrumbs, dateText, resultType, isAd, sitelinks, pageNumber, sourceUrl, scrapedAt, and warnings.

The OUTPUT key-value record contains SUCCEEDED, PARTIAL, EMPTY, BLOCKED, or REJECTED status, counts, source URLs, and diagnostics. A blocked run is reported as a failed run with zero fabricated rows. Invalid-only input is softly rejected with an actionable summary. A valid query with no visible matches is kept distinct as EMPTY.

Pricing

This Actor uses pay-per-event pricing. These are the current Apify Store event prices:

EventPrice (USD)When it is charged
apify-actor-start$0.00005Actor Start — Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). — Charged once per run.
apify-default-dataset-item$0.006Yandex result — One structured public Yandex search result written to the default dataset.

Apify platform usage for this Actor run is included alongside the event prices above; no separate per-run platform-usage fee is passed to users.

This covers Apify platform usage for this Actor run. Other Apify products or usage outside this Actor run may still follow your account plan.

When to use it

Use this Actor when you need a bounded, structured snapshot of public Yandex web search results, such as checking search visibility across queries, collecting competitor result URLs, comparing Russian or Turkish SERPs, or feeding search-result rows into an analysis workflow. It is suitable for both manual runs and API/MCP-driven agent workflows.

Do not use it for private account data, Yandex Mail, Yandex Maps, Yandex Market, arbitrary website crawling, CAPTCHA solving, or guaranteed personalized rank tracking. Yandex may personalize or regionally vary results, and a CAPTCHA or rate-limit response is reported in OUTPUT rather than converted into fabricated empty data.

Access and reliability

This Actor reads public search pages only. Public HTML is fetched first over HTTP. A browser is launched only if that response lacks usable results. Failed browser requests get one bounded residential-proxy fallback through Apify Proxy. Browser images, fonts, media, stylesheets, and analytics are blocked to reduce transfer costs. Residential fallback loads only the HTML document, since result cards are server-rendered; scripts and other subresources are not downloaded through the paid proxy. Unknown or incomplete pages are reported as failures, not empty searches; an empty result requires an explicit no-match message. No route retries a request. Two failed direct browser pages stop that route, and two failed final-route pages without data stop the run. Proxy selection is managed by the Actor and aligned with the source domain: RU for yandex.ru, TR for yandex.com.tr, and US for yandex.com. Explicit region and language parameters are retained. The default and Console prefill use yandex.com.tr, one OpenAI query, one result, and one page. Explicit domain values and startUrls keep their regional domain; results can differ across regions. Yandex may challenge any domain: a CAPTCHA or rate-limit response is reported in OUTPUT and all-blocked runs fail truthfully with zero result charges. This Actor does not solve CAPTCHAs. HTTP requests time out after 15 seconds and browser navigation after 30 seconds. Up to 20 distinct queries or start URLs and 100 HTTP pages are processed per run.

For manual runs without overrides, the defaults are one OpenAI query, up to 20 unique rows, and up to three pages per query. The Console prefill uses a one-result, one-page smoke input. Multiple queries are supported, but all queries share the run-level result cap. If a page is blocked after retries, the run exposes a BLOCKED or PARTIAL status and warning details in OUTPUT.

MCP-friendly scope

Use this Actor when an agent needs structured public Yandex web-search results for a bounded list of queries. Do not use it for private account data, Yandex Mail/Maps/Market content, CAPTCHA solving, arbitrary website crawling, or guaranteed rank tracking across personalized sessions. Output is capped by maxResults and pagination is capped by maxPagesPerQuery.

API input example

curl -X POST "https://api.apify.com/v2/acts/muhammadafzal~yandex-search-parser/runs?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"searchQueries": ["купить ноутбук", "AI news"],
"domain": "yandex.com.tr",
"language": "all",
"maxResults": 25,
"maxPagesPerQuery": 2
}'

The same narrow input/output contract is suitable for Apify MCP clients that need a Yandex search tool.

Compliance note

Use this Actor only for public pages and in accordance with Yandex terms, applicable law, and your own data-use requirements. Results reflect what Yandex returns to the Actor's configured region, language, and session at run time.

Local development

npm ci
npm test

The parser is covered by fixture-style unit tests. A live Yandex canary requires network access and should be run privately with a small result/page cap before publication.

Existing scheduled pricing

Active prices remain $0.00005 per start event and $0.006 per result. An existing pricing change takes effect October 5, 2026; this repair preserves that schedule.

EventFREEBRONZESILVERGOLD
Start$0.039279$0.038297$0.037315$0.031423
Result$0.013214$0.012883$0.012553$0.010571

Scheduled discounts are approximately 0%, 2.5%, 5%, and 20%, rounded to the accepted precision. A one-result run at the scheduled FREE list prices totals $0.052493; ten results total $0.171419. Free-plan runs remain capped at five delivered results.