Naver Place Business & Reviews Scraper (Korea)
Pricing
Pay per event
Naver Place Business & Reviews Scraper (Korea)
Korean local business data from Naver Place: businesses, visitor reviews, reputation aggregates, menus and photos. Filters out the out-of-area results Naver silently pads its responses with, and tells you how many it dropped. No login, no browser.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Oswaldo Carabano
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Korean local business data from Naver Place — the directory Koreans actually use, where Google Maps coverage is thin. Businesses, visitor reviews, reputation aggregates, menus and photos.
No login. No session cookies. No browser. Just the pages Naver serves publicly to any visitor.
What makes this one different
Naver pads its search results with businesses from outside the area you asked
for — silently, with HTTP 200, and with no marker in the response. Measured across
10 queries: for 역삼동 치과 Naver reports 638 matches, serves 300, and only 162
are actually in 역삼동. For 율현동 치과 it reports 52, serves 52, and 2 are in
the area.
This actor filters them out and tells you how many it dropped:
"역삼동": 162 of 300 results are actually located in this area.138 were padding from neighbouring areas and were dropped.Naver reports 638 matches for this query, but that count includesout-of-area padding and is not an inventory figure.
It also tells you the real ceiling: Naver serves at most 300 results per query. Wide coverage needs more regions or narrower terms, and the run log says so instead of letting you assume you got everything.
What you get
Businesses — name, category (translated, with the Korean original kept), phone, road and jibun addresses, coordinates, opening status and hours, facilities, photos, menu count, booking and chat links.
Reputation aggregates, computed by Naver itself: average rating, star distribution across 10 bands, review and reviewer counts, image-review count, and Naver's own theme analysis with counts (taste, price, atmosphere…).
Reviews — full text, visit date, photos and videos, and whether the review is
receipt-verified. Star ratings depend on the vertical: restaurants and cafés
carry them, clinics and pharmacies do not — Naver simply does not compute a rating
there, and the field comes back null rather than a made-up zero.
Menus — item name, price in KRW, description and photos.
One entity type per run
Pick what you want with entityType: businesses, reviews, menu items or photos.
Each run writes a single clean shape to the dataset, so the CSV or JSON you download
has one set of columns instead of a mix. Run it once per type if you need more than
one. Failed requests go to the key-value store under ERRORS and are never
charged.
Reviewer identities are never returned
Every review on Naver carries the reviewer's nickname, a stable account id, and a link to their entire public review history. None of it is returned here. Not behind a flag, not on request. An automated test fails the build if a reviewer identifier appears in any delivered row, at any depth.
You get what was said and how it was rated — which is what competitor analysis needs — not who said it.
Fill rates, measured on 3,295 businesses across 8 verticals and 8 regions
Present for at least 90 % of businesses in every vertical measured: name, category, all three address forms, coordinates, image count, blog review count.
Phone: 88 % on average, but 37 % in the worst vertical measured (pharmacies).
Between 37 % and 87 % of businesses only publish the 0507-… relay number Naver
puts in front of the real one — phone_is_virtual tells you which you got.
Some fields depend heavily on the vertical. visitor_review_score is absent for
clinics, academies and pharmacies. micro_review and save_count only appear for
restaurants and cafés. The dataset always includes the key with an explicit null,
never a missing field.
Coverage tips
- Query in Korean. Naver's search is Korean-first:
치과returns far more thandentist. - Add regions to go past the 300-per-query ceiling.
["서울 강남구", "서울 마포구"]covers two districts properly instead of one query overflowing. - Reviews cost more than businesses to collect, because each business needs its
own paginated sweep. Start with a small
maxResultsto see the shape before running wide.
Data policy and removal requests
naver.actorstack.dev · privacy@actorstack.dev
Every row is fetched fresh from Naver and says so: from_cache is false,
fetched_at and data_age_hours are null. Shared caching is designed but not
switched on yet — when it is, those three fields will carry the age of the data, so a
cached result can never be presented as fresh.
Failed requests go to the key-value store under ERRORS and are never charged.
Not affiliated with, endorsed by, or connected to Naver Corporation.