Yandex Maps Reviews Scraper avatar

Yandex Maps Reviews Scraper

Pricing

Pay per event

Go to Apify Store
Yandex Maps Reviews Scraper

Yandex Maps Reviews Scraper

Scrape public Yandex Maps reviews with ratings, reviewer profiles, reactions, photos, owner replies, and place context from URLs, IDs, or searches.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Extract public Yandex Maps reviews from organization URLs, raw business IDs, or search queries.

The actor is built for reputation monitoring, local SEO research, competitor intelligence, and review analytics workflows that need structured Yandex Maps review data without manual copying.

What does Yandex Maps Reviews Scraper do?

Yandex Maps Reviews Scraper collects public review records from Yandex Maps business pages.

It can start from exact place URLs, raw Yandex business IDs, or search queries that discover matching places first.

Each dataset item is one review enriched with place context.

Who is it for?

Reputation agencies

Monitor customer feedback for client branches and export reviews into dashboards.

Local SEO teams

Analyze ratings, reviewer language, review recency, and owner replies across local competitors.

Brand monitoring teams

Track fresh public reviews for high-priority branches on Yandex Maps.

Data analysts

Build repeatable review datasets for sentiment analysis and BI pipelines.

Sales and market researchers

Compare public customer feedback for businesses in the same category and region.

Why use this actor?

  • ✅ Structured review data instead of manual copy-paste
  • ✅ Supports exact Yandex Maps URLs and raw organization IDs
  • ✅ Optional search-query discovery for places
  • ✅ Includes reviewer metadata, ratings, text, reactions, and owner replies when public
  • ✅ Runs as an Apify actor with datasets, API access, schedules, and integrations

What data can you extract?

FieldDescription
placeIdYandex Maps business ID
placeNamePlace name when discovered from search
placeUrlYandex Maps organization URL
addressPublic address when available
categoriesPlace categories
overallRatingOverall place rating when available
totalReviewCountPublic count from place metadata when available
reviewIdReview identifier
reviewerNamePublic reviewer display name
reviewerProfileUrlPublic Yandex Maps profile URL when available
reviewerAvatarUrlPublic avatar URL/template
reviewerLevelYandex reviewer level text
ratingNumeric review rating
reviewTextReview text
reviewLanguageLanguage marker from Yandex
reviewDateReview update/create timestamp
likesPublic like count
dislikesPublic dislike count
photosPublic review photo URLs
ownerReplyTextBusiness owner reply text when present
ownerReplyDateOwner reply timestamp when present
scrapedAtTimestamp of extraction

How much does it cost to scrape Yandex Maps reviews?

This actor uses pay-per-event pricing.

You pay a small start fee for each run and a per-review fee for every saved review record.

Small tests are inexpensive because the default input saves only a limited number of reviews.

For large monitoring jobs, increase maxItems and maxReviewsPerPlace based on your budget.

How to scrape Yandex Maps reviews

  1. Open the actor on Apify.
  2. Paste one or more Yandex Maps organization URLs.
  3. Optionally add raw business IDs or search queries.
  4. Set maxItems to the total number of reviews you want.
  5. Run the actor.
  6. Export the dataset as JSON, CSV, Excel, XML, RSS, or HTML.

Input options

startUrls

Paste Yandex Maps business URLs such as:

[{ "url": "https://yandex.com/maps/org/1018907821/" }]

businessIds

Use raw IDs when you already have them:

["1018907821"]

searchQueries

Discover places before collecting reviews:

[
{
"query": "cafe pushkin",
"location": "moscow",
"coordinates": "37.6173,55.7558",
"span": "0.5,0.5"
}
]

maxItems

Total review limit across all places.

maxReviewsPerPlace

Maximum review records for each organization.

maxPlacesPerQuery

Maximum places to process for each search query.

sort

Choose newest reviews first or most relevant reviews first.

locale

ru_RU is the default because Yandex often exposes richer review data in that locale.

regionId

Yandex region context for search queries.

Output example

{
"placeId": "1018907821",
"placeName": null,
"placeUrl": "https://yandex.com/maps/org/1018907821/",
"address": null,
"categories": [],
"overallRating": null,
"totalReviewCount": null,
"reviewId": "example-review-id",
"reviewerName": "Public reviewer",
"reviewerProfileUrl": "https://yandex.com/maps/user/example/",
"reviewerAvatarUrl": "https://avatars.mds.yandex.net/...",
"reviewerLevel": "City expert",
"rating": 5,
"reviewText": "Great place and friendly service.",
"reviewLanguage": "unknown",
"reviewDate": "2026-05-28T20:52:45.512Z",
"likes": 0,
"dislikes": 0,
"photos": [],
"ownerReplyText": null,
"ownerReplyDate": null,
"source": "Yandex Maps",
"scrapedAt": "2026-05-29T00:00:00.000Z"
}

Tips for best results

  • Use exact organization URLs when possible.
  • Use raw business IDs for repeat monitoring.
  • Keep first test runs small.
  • Use by_time to monitor the newest feedback.
  • Add coordinates and span for search queries in large cities.
  • Use ru_RU if review counts look unexpectedly low.

Integrations

Google Sheets

Send the dataset to Google Sheets for review tracking.

Slack

Schedule the actor and notify a Slack channel when new reviews appear.

Airtable

Store review records for client-facing reputation workflows.

BI tools

Export JSON or CSV into Power BI, Looker Studio, or Tableau.

Sentiment analysis

Pipe reviewText into an NLP classifier or LLM workflow.

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/yandex-maps-reviews-scraper').call({
businessIds: ['1018907821'],
maxItems: 20
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient
client = ApifyClient('MY-APIFY-TOKEN')
run = client.actor('automation-lab/yandex-maps-reviews-scraper').call(run_input={
'businessIds': ['1018907821'],
'maxItems': 20,
})
print(run['defaultDatasetId'])

cURL

curl -X POST 'https://api.apify.com/v2/acts/automation-lab~yandex-maps-reviews-scraper/runs?token=MY-APIFY-TOKEN' \
-H 'Content-Type: application/json' \
-d '{"businessIds":["1018907821"],"maxItems":20}'

MCP usage

Use this actor from Claude Desktop or Claude Code through Apify MCP.

MCP server URL:

https://mcp.apify.com/?tools=automation-lab/yandex-maps-reviews-scraper

Claude Code setup:

$claude mcp add apify-yandex-reviews https://mcp.apify.com/?tools=automation-lab/yandex-maps-reviews-scraper

Claude Desktop JSON config:

{
"mcpServers": {
"apify-yandex-reviews": {
"url": "https://mcp.apify.com/?tools=automation-lab/yandex-maps-reviews-scraper"
}
}
}

Example prompt:

Scrape the newest 20 Yandex Maps reviews for business ID 1018907821 and summarize the main complaints.

Another prompt:

Find Yandex Maps reviews for cafe pushkin in Moscow and return reviewer names, ratings, dates, and review text.

Scheduling

Run the actor daily or weekly to monitor public review changes.

Use a fixed set of business IDs for stable recurring jobs.

Export the dataset after each run or connect it to a webhook.

Common workflows

Competitor review monitoring

Search for category leaders, collect recent reviews, and compare ratings and complaints.

Branch QA

Run one business ID per branch and track low-rated reviews.

Agency reporting

Export review records into a monthly reputation report.

Owner reply audit

Use ownerReplyText to check whether businesses respond to public feedback.

Limitations

Yandex Maps may expose different metadata by region, locale, and organization.

Some places have few or no public reviews.

Reviewer profile URLs and owner replies are included only when Yandex returns them publicly.

Search-query discovery depends on Yandex Maps search context, so exact URLs or IDs are more deterministic.

Troubleshooting

Why did I get zero reviews?

Check that the place has public Yandex Maps reviews and try locale: "ru_RU".

Why is place name missing?

Place names are available when the actor discovers places from search. Raw business IDs and some URLs may only provide review data.

Why does search find a different place?

Add coordinates, span, and the correct regionId to narrow the Yandex Maps search area.

Data quality notes

The actor stores the raw public review identifiers returned by Yandex Maps.

Timestamps are ISO strings when provided by the source.

Photo arrays are empty when reviews have no public images.

Legality

This actor extracts publicly available information from Yandex Maps.

Use the data responsibly and comply with applicable laws, platform terms, privacy obligations, and your own legal requirements.

Do not use scraped personal data for spam, harassment, or unlawful profiling.

FAQ

Can I scrape multiple places in one run?

Yes. Add multiple URLs, business IDs, or search queries.

Can I get only new reviews?

Use sort: "by_time" and keep your own previous reviewId list for deduplication.

Does the actor require login?

No. It collects public review data only.

Can I scrape by category and city?

Yes. Use a search query such as restaurants with location, coordinates, and span.

Can I export to CSV?

Yes. Apify datasets support CSV, JSON, Excel, XML, RSS, and HTML exports.

Does it scrape private user data?

No. It only returns data exposed publicly by Yandex Maps.

Changelog

0.1

Initial release with URL, business ID, and search-query input modes.

Support

If a run fails, share the run URL and input with support so we can reproduce the issue.

Version

Actor version: 0.1

End

Ready for structured Yandex Maps review extraction.