Naver Place Reviews Scraper
Pricing
from $0.35 / 1,000 visitor reviews
Naver Place Reviews Scraper
Collect public visitor reviews from one or more Naver Place listings in a single run. Each review shows its text, dates, visit details, and star rating when Naver provides one. No Naver login is needed.
Pricing
from $0.35 / 1,000 visitor reviews
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Share
🍽️ See what visitors say about Naver Place listings
Naver Place Reviews collects public visitor reviews from Naver Place listings. It is built for marketers, researchers, and business owners who want to learn what visitors say about local places on Naver. Each review comes with its text, dates, and visit details, plus its star rating and keywords when they are available. Place summaries come back too. Blog and cafe posts are included by default, and you can turn that option off. You can check several places in one run, and no Naver login is needed.
Use it to:
- Read what visitors say about a Naver Place, including their star ratings, visit dates, and the keywords they picked.
- See how a place's star ratings are spread, from five stars down to one star, in its place summary row.
- Track new visitor reviews for a place by turning on Only new reviews for repeat runs.
- Find the menu items mentioned in a place's reviews and the keywords visitors voted for.
- Collect the blog and cafe posts on a place's blog tab, with each post's title and link, and its publish date when Naver shows one.
📦 Visitor reviews, place summaries, and posts in one dataset
Each run saves rows to a dataset. The recordType field tells you which kind of row you are looking at:
reviewis one visitor review.placeSummaryis one summary for each place.postis one blog post or cafe article.
🔎 Start with a place link, business name, or keyword
Pick one way to find places in Find places by, fill in the matching section, and start the run. Values in the other sections are ignored. For another search, start a separate run. When the run finishes, open the results table to see the rows.
⚙️ Input
Input fields
| Field | Type | What it does |
|---|---|---|
findPlacesBy | string | Picks how places are found: placeLinks, businessNames, or searchKeywords. Required. |
placeLinks | array of objects | Naver Place links, one per row, each as an object with a url field. Accepted links start with https://map.naver.com/p/entry/place/, https://m.place.naver.com/, or https://pcmap.place.naver.com/. Each place is collected on its own. Used with Naver Place links. |
businessNames | array of strings | Business names as they appear on Naver. Each name collects its matching Naver Place. Used with Business names. |
searchKeywords | array of strings | Keywords, such as a neighborhood and a category. Each keyword collects the places that Naver's search list shows for it. That can be fewer than the total matches that Naver reports. All keywords in one run use the same settings. Used with Search keywords. |
onlyNewReviews | boolean | When on, only visitor reviews that appeared since the place's previous run are collected. When off, all visitor reviews are collected, up to the review limit. Default: off. |
reviewOrder | string | newestFirst or oldestFirst. Reviews are listed by visit date, not by the date each review was written. Oldest first reads every review for a place before it returns any, so a place with many reviews takes many pages to read. With Oldest first, the review limit only applies after that full read. Default: newestFirst. |
maxReviewsPerPlace | integer | Optional. Stops after this many visitor reviews for each place. Leave empty to return all available visitor reviews for each place, until Naver has no more to show. Minimum 1. The form starts at 20. |
includeBlogAndCafePosts | boolean | Adds blog posts and cafe articles from each place's blog tab that are publicly accessible. Naver lists only a limited number of posts for each place, so a run can collect fewer posts than Naver reports. The review limit does not count them. Each saved post is charged separately. Default: on. |
Example input
This example uses the default settings and one sample place link.
{"findPlacesBy": "placeLinks","placeLinks": [{"url": "https://map.naver.com/p/entry/place/2097258400"}],"onlyNewReviews": false,"reviewOrder": "newestFirst","maxReviewsPerPlace": 20,"includeBlogAndCafePosts": true}
🧾 Output
Each run saves rows to the default dataset. Rows have different fields, so each row type has its own table. The recordType field tells you which table applies.
Visitor review rows
| Field | Type | What it does |
|---|---|---|
recordType | string | Always review for a visitor review. |
placeId | string | Naver's ID for the place. |
placeName | string | The place's name on Naver. |
placeCategory | string | The place's category on Naver. Missing when Naver does not show one. |
placeAddress | string | The place's street address on Naver. Missing when Naver does not show one. |
reviewId | string | Naver's ID for this review. Use it to spot the same review again, such as in a later run. |
reviewerName | string | The reviewer's public display name, as Naver shows it. |
reviewerReviewCount | integer | How many reviews the reviewer has written in total, as Naver shows it. Missing when Naver does not show it. |
starRating | number | The star rating from 0.5 to 5. Missing when Naver does not show one. |
reviewText | string | The text the reviewer wrote. |
writtenOn | string (date) | The date the review was written. |
visitedOn | string (date) | The date of the visit that the review is about. |
visitCount | integer | How many times the reviewer has visited this place, as Naver shows it. |
visitTags | array of strings | Visit tags the reviewer picked, such as who came along, why they visited, wait time, and whether they had a reservation. Empty when there are none. |
visitVerification | string | How Naver checked the visit, such as by receipt. Missing when Naver does not show it. |
reviewKeywords | array of strings | Keyword tags the reviewer picked. Empty when there are none. |
menuItems | array of strings | Menu items or services the reviewer named. Empty when none are named. |
photoUrls | array of URLs | Links to the photos attached to the review. The photos are linked, not downloaded. Empty when there are none. |
ownerReply | string | The owner's reply to this review. Missing when the owner has not replied. |
viewCount | integer | How many views the review has received on Naver. |
reactionCount | integer | How many reactions the review has received on Naver. |
Example review row
This is a real row from a sample restaurant.
{"recordType": "review","placeId": "2081007605","placeName": "홍백당 역삼점","placeCategory": "중식당","placeAddress": "서울 강남구 논현로 514","reviewId": "6aba3549eb73b12222a30e2c","reviewerName": "Youcc","reviewerReviewCount": 7,"starRating": 5,"reviewText": "지금까지 먹어본 훠궈중에 제일 맛있었어요ㅎㅎㅎ 재료도 신선하고 국물도 고급스러워용ㅎㅎ!! 라즈지도 진짜진짜 넘 맛있어요ㅋㅋ… 그리고 직원분들도 다 친절하셔서 부모님이랑 같이 먹는데 너무 좋았어요!! 다음에 훠궈 먹고 싶을 때 무조건 여기만 방문할 것 같아요💕💕","writtenOn": "2026-09-28","visitedOn": "2026-09-28","visitCount": 1,"visitTags": ["예약 없이 이용","바로 입장","가족모임","부모님"],"visitVerification": "영수증","reviewKeywords": ["음식이 맛있어요","재료가 신선해요","양이 많아요","매장이 넓어요","단체모임 하기 좋아요"],"menuItems": [],"photoUrls": [],"ownerReply": "정성스러운 리뷰 정말 감사합니다😊 지금까지 드셔본 훠궈 중 제일 맛있었다니 너무 기분 좋네요! 재료랑 국물은 물론 라즈지까지 맛있게 드셔주셔서 감사합니다ㅎㅎ 부모님과도 편하게 식사하셨다니 더 뿌듯해요💕 다음에도 훠궈 생각나실 때 꼭 들러주세요!","viewCount": 15,"reactionCount": 0}
Place summary rows
| Field | Type | What it does |
|---|---|---|
recordType | string | Always placeSummary for a place summary. |
placeId | string | Naver's ID for the place. |
placeName | string | The place's name on Naver. |
placeCategory | string | The place's category on Naver. Missing when Naver does not show one. |
placeAddress | string | The place's street address on Naver. Missing when Naver does not show one. |
averageRating | number | The place's average star rating on Naver, from 1 to 5. Missing when the place has no star ratings. |
totalReviewCount | integer | The total number of visitor reviews that Naver shows for the place. This is Naver's count, not the number of reviews in this run. |
fiveStarCount | integer | How many reviews the place has with 5 stars, as Naver shows it. Missing when the place has no star ratings. |
fourStarCount | integer | How many reviews the place has with 4 stars, as Naver shows it. Missing when the place has no star ratings. |
threeStarCount | integer | How many reviews the place has with 3 stars, as Naver shows it. Missing when the place has no star ratings. |
twoStarCount | integer | How many reviews the place has with 2 stars, as Naver shows it. Missing when the place has no star ratings. |
oneStarCount | integer | How many reviews the place has with 1 star, as Naver shows it. Missing when the place has no star ratings. |
reviewThemes | array of strings | Review themes that Naver shows for the place. Empty when Naver shows none. |
mentionedMenuItems | array of strings | Menu items mentioned in the place's visitor reviews. Empty when none are mentioned. |
placeKeywords | array of strings | Keyword tags that visitors voted for the place. Empty when there are none. |
Example place summary row
This is a real row from the same sample restaurant.
{"recordType": "placeSummary","placeId": "2081007605","placeName": "홍백당 역삼점","placeCategory": "중식당","placeAddress": "서울 강남구 논현로 514","averageRating": 4.97,"totalReviewCount": 92,"fiveStarCount": 88,"fourStarCount": 2,"threeStarCount": 0,"twoStarCount": 0,"oneStarCount": 0,"reviewThemes": ["맛","만족도","서비스","목적","분위기","음식량","위치","메뉴","청결도","주차","예약","가격"],"mentionedMenuItems": ["훠궈","고기","소고기","새우","양고기","볶음밥","계란볶음밥","맥주","새우볶음밥","아이스티","안심","어묵"],"placeKeywords": ["음식이 맛있어요","재료가 신선해요","매장이 넓어요","인테리어가 멋져요","친절해요","양이 많아요","단체모임 하기 좋아요","특별한 메뉴가 있어요","매장이 청결해요","가성비가 좋아요","현지 맛에 가까워요","혼밥하기 좋아요","고기 질이 좋아요","메뉴 구성이 알차요","주차하기 편해요","화장실이 깨끗해요","아늑해요","좌석이 편해요","디저트가 맛있어요","비싼 만큼 가치있어요","반찬이 잘 나와요","대화하기 좋아요","뷰가 좋아요"]}
Blog and cafe post rows
| Field | Type | What it does |
|---|---|---|
recordType | string | Always post for a blog post or cafe article. |
placeId | string | Naver's ID for the place the post is about. |
placeName | string | The place's name on Naver. |
postTitle | string | The title of the blog post or cafe article. |
postUrl | URL | The link to the post on Naver. |
publishedOn | string (date) | The date the post was published, as Naver shows it. Missing when Naver does not show it. |
Example post row
This is a real row from a sample place's blog tab.
{"recordType": "post","placeId": "2097258400","placeName": "오몬자","postTitle": "강남역맛집 오몬자","postUrl": "https://m.blog.naver.com/jjoy0103/224407990190","publishedOn": "2026-09-18"}
💳 Pricing
You pay for each visitor review and each blog post or cafe article that is saved to the dataset. Place summary rows are not charged.
- Visitor review: one visitor review saved to the dataset.
- Blog post: one blog post or cafe article saved to the dataset.
Prices can differ by your Apify plan. To collect visitor reviews only, turn off Include blog and cafe posts.
🔌 Integrations
Results are saved to an Apify dataset. You can open them in the Apify Console or read them through the Apify API.
Watch this video on YouTube:
❓ FAQ
Does the blog option search all Naver blog posts?
No. For each place, it reads only that place's own blog tab. It does not search general Naver Blog or Naver Cafe posts.
Are the photos downloaded?
No. Each review lists links to its photos. The photos are linked, not downloaded.
Does it collect deleted or hidden reviews?
No. It does not report reviews that were deleted, hidden, or removed.
Does it translate reviews or score their sentiment?
No. It does not translate review text, summarize it, or score its sentiment.
Will it send me an alert when a place gets new reviews?
No. It does not send alerts or messages. To collect only new reviews, turn on Only new reviews. A run then collects only the reviews that appeared since the place's previous run.
What happens if a place cannot be read?
The run reports the reason for that place, and the other places in the same run still finish. A place that cannot be read never produces review rows, and it is never reported as having no new reviews.
Why can a keyword search return fewer places than Naver reports?
Naver's search list can show fewer places than the total matches that Naver reports. Each keyword collects the places that the search list shows.
Does the review limit count blog posts?
No. The review limit counts only visitor reviews. Blog posts and cafe articles are not counted toward it.
Do I pay for place summary rows?
No. Place summary rows are not charged. Visitor reviews and blog or cafe posts are charged when they are saved to the dataset.
Do I need a Naver login?
No. The Actor reads public pages only, and no login or account is needed.
📝 Changelog
v0.0 (15-10-2026)
- Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Naver Blog Review Scraper: Find public Naver Blog review posts by keyword or post URL, for research beyond one place's blog tab.
- 2GIS Reviews Scraper: Collect public 2GIS reviews, with ratings, dates, and business replies, for local places you choose.
- Yelp Business Review Scraper: Collect full-text Yelp reviews for local businesses, with ratings, dates, and photo links.
- Yelp Scraper: Review Reputation Monitor: Track public Yelp businesses over repeat runs, with review evidence and changes between runs.
- Zomato Reviews Scraper: Collect public Zomato restaurant reviews, with ratings, reviewer details, and management replies.
Made with ❤️ by Maxime Dupré