Naver Place Visitor & Blog Review Finder avatar

Naver Place Visitor & Blog Review Finder

Pricing

from $0.49 / 1,000 results

Go to Apify Store
Naver Place Visitor & Blog Review Finder

Naver Place Visitor & Blog Review Finder

Collect Naver Place visitor reviews, linked Naver Blog posts, and aggregated rating statistics by place URL/ID or keyword search, with ratings, voted keywords, photos and owner replies.

Pricing

from $0.49 / 1,000 results

Rating

0.0

(0)

Developer

Dataspryva

Dataspryva

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Security

Limited permissions

Share

Naver Place is where most South Koreans check reviews before visiting a restaurant, cafe, clinic, or shop. This actor collects visitor reviews, linked Naver Blog posts, and aggregated rating statistics by place URL/ID or keyword search.

What this actor does

  • Visitor reviews at scale — text reviews and rating-only reviews from Naver's separate review streams, paginated 50 per request up to your maxReviews cap (1–5,000 per place)
  • Exact dates — review creation date and timestamp, visit date, and blog publish date, including reviews older than one year
  • Blog and cafe reviews — linked Naver Blog posts with title, excerpt, author, thumbnails, source type, and publish date, up to Naver's 100-per-place cap
  • Aggregated statistics — average rating, half-star distribution, review themes, top menus, voted-keyword counts, image/author counts, and text vs rating-only totals
  • Two start modes — give place URLs/IDs (including naver.me short links), search by keyword, or combine both
  • Incremental runs — filter by visit date and exclude known review IDs or blog URLs
  • Clean records — empty fields are omitted instead of returned as null

Output per record

Every record has a reviewType of visitor, blog, or stats.

Visitor review (reviewType: "visitor")

  • placeId, placeName, placeCategory, placeBusinessCategory, placeAddress, placeRoadAddress, placeRating, placeTotalReviews, placeBlogReviewCount, placeUrl — place identity
  • searchKeyword, searchRank — keyword that found the place and its search rank
  • reviewId, reviewText, reviewHasText, reviewRating — the review itself; reviewHasText is false for rating-only rows, and reviewRating is omitted when Naver withholds it on older reviews
  • reviewDate, reviewCreatedAt, visitDate, visitCount, visitCountLabel — when it was posted, when the visit happened, and how many visits the reviewer reports
  • reviewerName, reviewerProfileUrl, reviewerImageUrl, reviewerFollowerCount, reviewerReviewCount, reviewerAverageRating — reviewer identity and stats
  • votedKeywords[], visitTags[] — Naver's official review-vote tags and visit-context tags
  • reviewPhotos[], mediaCount — photo and video-thumbnail URLs (when includeReviewPhotos is enabled) and the total media count
  • reviewReplyText, reviewReplyDate, hasReply, replyStatus — the owner's reply
  • menuItem, originType, language, translatedText, reviewReactionCount, reviewViewCount — review context
  • scrapedAt — ISO 8601 timestamp

Blog review (reviewType: "blog")

  • Place identity and searchKeyword/searchRank, same as above
  • blogTitle, blogContents, blogContentsLength, blogUrl — post title, excerpt, excerpt length, and link
  • bloggerName, bloggerHome, bloggerProfileImageUrl — blogger identity
  • blogDate, blogSource, blogTypeName — publish date, source type (blog or cafe), and localized label
  • blogRank, isRepresentative, isSelfPaid — position, representative flag, and self-paid flag
  • blogThumbnailUrl, blogThumbnailUrls[] — primary thumbnail and all thumbnails
  • scrapedAt — ISO 8601 timestamp

Stats (reviewType: "stats", one per place)

  • Place identity and searchKeyword/searchRank
  • averageRating, totalReviewCount, starDistribution, ratingDistribution — average, total, integer histogram when available, and the exact half-star histogram
  • reviewThemes[], topMenus[], votedKeywordStats[] — theme labels, most-mentioned menu items, and voted-keyword counts
  • imageReviewCount, authorCount, totalVisitorReviews, textReviewCount, ratingReviewCount, blogReviewCount — review counts
  • scrapedVisitorReviews, scrapedBlogReviews, runRatingDistribution, runKeywordDistribution — what this run collected for the place
  • scrapedAt — ISO 8601 timestamp

Input

FieldTypeDefaultDescription
placeUrlsarray–Naver Place URLs, naver.me links, or bare numeric place IDs
searchKeywordsarray–Keywords to discover places first; can be combined with placeUrls
maxPlacesPerKeywordinteger3Places per keyword (1–100; Naver returns up to 100)
maxReviewsinteger100Visitor reviews per place across both streams (1–5,000)
includeVisitorReviewsbooleantrueCollect visitor reviews
includeRatingOnlyReviewsbooleantrueAlso collect rating-only reviews from the separate stream
includeBlogReviewsbooleantrueCollect linked blog and cafe posts
maxBlogReviewsinteger100Blog posts per place (1–100; Naver's hard cap)
includeReviewPhotosbooleanfalseInclude review photo and video-thumbnail URLs
includeReviewStatsbooleantrueEmit one stats record per place
visitedSincedate–Keep only reviews with a visit date on or after this date
excludeReviewIdsarray–Visitor review IDs and blog URLs to skip
maxConcurrencyinteger3Places scraped in parallel (1–10)
maxItemsinteger100Hard cap on total records across all places (1–5,000)
proxyConfigurationobject–Optional proxy; direct requests are tried first and an Apify datacenter proxy is used only after a real block

Example: reviews for specific places

{
"placeUrls": [
"https://map.naver.com/p/entry/place/38239053",
"1000750444"
],
"maxReviews": 500,
"includeRatingOnlyReviews": true,
"includeReviewPhotos": true,
"includeReviewStats": true,
"maxItems": 1000
}

Example: discover places by keyword first

{
"searchKeywords": ["강남 맛집", "홍대 카페"],
"maxPlacesPerKeyword": 10,
"maxReviews": 100,
"includeBlogReviews": true,
"maxBlogReviews": 20,
"includeReviewStats": true,
"maxItems": 2000
}

Example: only new reviews since a date

{
"placeUrls": ["38239053"],
"visitedSince": "2026-09-01",
"excludeReviewIds": ["6abf13296171f06ddbf56400"],
"maxReviews": 200
}

Use cases

  • Market entry research — read what local customers actually say about a category or area before entering the Korean market
  • Restaurant and cafe competitive analysis — compare ratings, rating distributions, voted keywords, and review volume across nearby competitors
  • Customer sentiment tracking — build a structured, NLP-ready archive of Korean-language reviews with exact dates and visit context
  • Brand reputation monitoring — track voted keywords, owner replies, and review themes for your own listed business
  • Academic research — study Korean consumer review behavior at scale, including rating-only reviews and blog coverage

FAQ

Is this affiliated with Naver? No. This is an independent, third-party actor that reads publicly available Naver Place pages and Naver's public review endpoints. It isn't operated by or affiliated with Naver.

Do I need a Naver login, cookie, or API key? No. The actor uses public, cookieless endpoints. No login, cookie, or API key is required.

How many visitor reviews can I get per place? Up to 5,000 per place with maxReviews. Naver paginates 50 reviews per request, and the actor follows the cursor until your cap or the end of the review stream. maxReviews counts both text reviews and rating-only reviews.

What are rating-only reviews? Some visitors leave a star rating without writing text. Naver serves those from a separate stream. Enable includeRatingOnlyReviews to include them; reviewHasText is false on those rows.

Why do some visitor reviews have no star rating? Naver returns individual star ratings only for its newest reviews on anonymous requests; older reviews in the same cursor stream come back with no rating. The actor omits the field rather than guessing. Text, dates, reviewer, tags, photos, and replies still fill normally, and the stats record's ratingDistribution covers every rating Naver reports for the place.

Why is blogDate now filled? The blog/cafe review endpoint returns an exact publish date (YYYY.MM.DD.). The actor normalizes it to YYYY-MM-DD. Blog posts are still capped at 100 per place by Naver.

Why are some stats fields missing for a place? Naver doesn't track an average rating, star distribution, themes, or menus for every vertical. Cafes and some clinics often have no average or histogram. Unavailable fields are omitted rather than guessed.

How exact are review dates? Review creation dates come from Naver's review ID timestamp, converted to Korea Standard Time, with the displayed date as a fallback. This fixes the wrong-year dates that short display strings like 21.10.21.목 used to produce. Visit dates come from Naver's exact visit-date field.

Why might reviewPhotos be empty even with includeReviewPhotos enabled? Not every review has photos or video. mediaCount tells you how many media items the review has; reviewPhotos is only populated when the review actually has media.

Do I need a proxy? No. The actor tries direct requests first and automatically escalates to an Apify datacenter proxy only if Naver blocks the request. You can supply your own proxy configuration if you prefer.

How fresh is the data? Each run reads Naver's current review endpoints, so review counts and content reflect what is published at run time. Naver's totals can drift slightly between requests because new reviews arrive continuously.