Naver Map Scraper — Korean Places, Menus, Hours & Reviews
Pricing
from $1.49 / 1,000 places
Naver Map Scraper — Korean Places, Menus, Hours & Reviews
Scrape Naver Map (map.naver.com) places by keyword, map area or link: address, phone, coordinates, rating, review counts, opening hours, menus with prices, transit, review keywords, Michelin and TV listings, plus optional visitor reviews. Beyond the 300-result limit.
Pricing
from $1.49 / 1,000 places
Rating
0.0
(0)
Developer
Unfenced Group
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Naver Map Scraper

Scrape Korean businesses from Naver Map (map.naver.com) by keyword, map area or place link: name, category, address, phone, coordinates, rating, review counts, opening hours, full menus with prices, transit access, review analysis and, optionally, visitor reviews. No API key or Naver account required.
Why this scraper?
🇰🇷 Built for Naver Map
Naver Map is where Koreans look up restaurants, cafés, clinics, salons and shops. This scraper returns the same data a user sees on a Naver place page, in clean English field names, with Korean values left exactly as Naver publishes them.
🗺️ Past the 300-result limit
A Naver search stops at 300 places. Give the scraper a map area and it splits the area into tiles until every matching place is collected: a whole district, not just the first pages.
🍽️ Full place details included
Opening hours per day with break times and last order, full menus with prices, website and social links, facilities, parking, payment methods, and the nearest subway exits and bus stops. Included in the place price.
⭐ Review intelligence
Rating, visitor and blog review counts, save count, Naver's review keyword statistics, the dishes reviewers mention most, top blog reviews, and optionally the visitor reviews themselves with visit dates, photos and owner replies.
🏆 Michelin and TV
Michelin Guide listings (stars, Bib Gourmand, Selected) and TV appearances by channel, programme and episode, with a filter to return Michelin-listed places only.
🔎 Naver's own filters
Sort by most searched, trending, featured on TV, most saved or most reviewed, and filter on open now, open 24 hours, delivery, takeout, reservations, new openings, coupons, Naver Pay, wheelchair access or a specific dish.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQueries | array | [] | Searches as you would type them on Naver Map, e.g. "강남 맛집", "홍대 카페", "부산 피부과". |
startUrls | array | [] | Place links: map.naver.com, m.place.naver.com or pcmap.place.naver.com. |
placeIds | array | [] | Naver place IDs (the number in a place link). |
maxResultsPerQuery | integer | 50 | Places per query. A search stops at 300; with boundingBox set, 0 collects every place in the area. |
maxItems | integer | 0 | Cap on places across the whole run. 0 means no cap. |
searchCenter | string | (empty) | Point Naver ranks results around, as "latitude,longitude". |
boundingBox | string | (empty) | Map area to sweep, as "minLongitude,minLatitude,maxLongitude,maxLatitude". |
sortBy | string | "relevance" | relevance, popular, trendy, tv, saved or reviewTotalCount. |
openNow | boolean | false | Only places open at run time. |
open24Hours | boolean | false | Only places open 24 hours. |
deliveryOnly | boolean | false | Only places offering delivery. |
takeoutOnly | boolean | false | Only places offering takeout. |
bookingOnly | boolean | false | Only places accepting Naver reservations. |
newlyOpenedOnly | boolean | false | Only newly opened places. |
couponOnly | boolean | false | Only places with a Naver coupon. |
naverPayOnly | boolean | false | Only places accepting Naver Pay. |
wheelchairAccessibleOnly | boolean | false | Only places with a wheelchair-accessible entrance. |
michelinOnly | boolean | false | Only Michelin Guide places. |
menuFilter | string | (empty) | Only restaurants serving this dish, in Korean, e.g. "파스타". |
includeDetails | boolean | true | Add hours, menus, links, facilities, transit, review analysis and photos. No extra charge. |
includeReviews | boolean | false | Add visitor reviews to each place. Charged per review. |
maxReviewsPerPlace | integer | 20 | Reviews per place. 0 means all, up to 1,000. |
reviewSort | string | "newest" | newest or recommended. |
proxyConfiguration | object | (empty) | Optional. Leave empty; the scraper manages its own connections. |
Sort and filter options follow Naver's restaurant and café search. For other categories Naver ignores the options it does not support.
Output schema
Every field below is present on every record. Values Naver does not publish for a place are null (or [] for lists).
Always present
| Field | Type | Description |
|---|---|---|
placeId | string | Naver place ID. |
name | string | Business name as shown on Naver Map. |
category | string | Naver category, in Korean (e.g. 카페, 중식당, 피부과). |
categoryCodes | array | Naver category codes, from broad to specific. |
businessType | string | Naver business type: restaurant, cafe, hospital, accommodation, hairshop, place and others. |
url | string | Link to the place on map.naver.com. |
mobileUrl | string | Link to the place on m.place.naver.com. |
phone | string | Phone number as published by the business (null if none). |
virtualPhone | string | Naver safe number (0507-…) when the business uses one (null otherwise). |
address | string | Full lot-number (jibun) address. |
roadAddress | string | Full road-name address. |
district | string | City, district and neighbourhood, e.g. "서울 강남구 신사동". |
latitude | number | Latitude. |
longitude | number | Longitude. |
distance | string | Distance from the search centre as Naver shows it (e.g. "1.2km"). |
rating | number | Average visitor rating out of 5 (null when Naver hides the score). |
visitorReviewCount | integer | Number of visitor reviews. |
blogReviewCount | integer | Number of blog and café reviews. |
bookingReviewCount | integer | Number of reviews left through Naver Booking. |
saveCount | string | How many users saved the place, as Naver shows it (e.g. "49,000+"; null when hidden). |
imageCount | integer | Number of photos on the place page. |
imageUrl | string | Main photo URL. |
imageUrls | array | Representative photo URLs. |
amenities | array | Amenities and options, e.g. 주차 (parking), 단체 이용 가능 (groups), 무선 인터넷 (Wi-Fi). |
businessStatus | string | Status at the time of the run, e.g. 영업 중 (open), 영업 종료 (closed), 브레이크타임. |
businessStatusText | string | Status detail, e.g. "22:00에 영업 종료" (closes at 22:00). |
shortReview | string | One-line summary of the place written by Naver (null if none). |
description | string | Business description written by the owner (null if none). |
hasBooking | boolean | Accepts Naver reservations. |
bookingUrl | string | Naver reservation link (null if not bookable). |
hasNaverPay | boolean | Accepts Naver Pay. |
talktalkUrl | string | Naver TalkTalk chat link (null if none). |
delivery | boolean | Offers delivery through Naver (null when unknown). |
tableOrder | boolean | Offers table ordering through Naver (null when unknown). |
preOrder | boolean | Offers pre-ordering through Naver (null when unknown). |
pickup | boolean | Offers pickup through Naver (null when unknown). |
coupons | array | Active Naver coupons: title, description, type, url. |
michelinGuide | object | Michelin Guide listing: year, distinction (star, Bib Gourmand or Selected), comment, url. Null if not listed. |
tvPrograms | array | TV programmes the place has appeared on. |
isNewOpening | boolean | Marked by Naver as newly opened. |
wheelchairAccessible | boolean | Has a wheelchair-accessible entrance (null when unknown). |
repeatVisitNote | string | Naver repeat-visit note, e.g. share of repeat visitors (null if none). |
searchQuery | string | The query that found this place (null for place links). |
searchRank | integer | Position in the search results (null for place links). |
detailsFetched | boolean | True when the detail fields below were collected. |
reviews | array | Visitor reviews (empty unless includeReviews is on). See the review table below. |
reviewsFetched | integer | Number of reviews attached to this record. |
contentHash | string | Stable hash of place ID and name, for change tracking. |
scrapedAt | string | ISO timestamp of when the record was saved. |
With includeDetails: true (default)
| Field | Type | Description |
|---|---|---|
directions | string | Directions written by the owner, e.g. "2번 출구에서 50m". |
openingHours | array | One entry per day: day (Mon–Sun), dayKo, open, close, breaks (start/end), lastOrder, closed, note. |
openingHoursNote | string | Free-text hours note or regular closing day. |
upcomingClosures | array | Announced irregular closures: name, startDate, endDate. |
menus | array | Menu items: name, price (KRW integer), priceText, description, imageUrl, badges, isSetMenu. |
menuCount | integer | Number of menu items Naver lists. |
menuImageUrls | array | Photos of the printed menu. |
homepage | string | Main website or social link. |
websites | array | All published links: url, type (website, Instagram, blog…), isPrimary. |
keywords | array | Keywords the business lists for itself. |
facilities | array | Facilities, e.g. 주차, 포장, 무선 인터넷. |
parking | object | Parking: description, free, fee, valet (null if not published). |
petsAllowed | boolean | Pets allowed (null when not stated). |
paymentMethods | array | Accepted payment methods, e.g. 제로페이, 지역화폐. |
subwayStations | array | Nearest subway stations: name, line, exit, walkMinutes, walkMeters. |
busStations | array | Nearest bus stops: name, stopCode, walkMinutes, walkMeters, routes. |
photoReviewCount | integer | Visitor reviews with photos. |
reviewerCount | integer | Number of distinct reviewers. |
reviewThemes | array | What reviews talk about, with counts: theme (맛 taste, 서비스 service…), code, count. |
reviewMenuMentions | array | Dishes most mentioned in reviews: menu, count. |
reviewKeywords | array | Naver's voted review keywords with counts, e.g. "음식이 맛있어요" (the food is good). |
blogReviews | array | Top blog and café reviews: title, url, source, blogName, date, excerpt, thumbnailUrl. |
broadcasts | array | TV appearances: channel, program, episode, date, menu. |
photoUrls | array | Business photo URLs from the place page. |
mediaReviewCount | integer | Visitor reviews with photos or video. |
couponCount | integer | Number of active coupons. |
naverBookingUrl | string | Direct Naver Booking link (null if not bookable). |
regionCode | string | Naver administrative region code. |
staticMapUrl | string | Static map image of the location. |
Each review (with includeReviews: true)
| Field | Type | Description |
|---|---|---|
reviewId | string | Review ID. |
rating | number | Star rating given. |
text | string | Review text. |
visitedDate | string | ISO date of the visit. |
visitedLabel | string | Visit date as Naver shows it (e.g. "9.19.토"). |
createdLabel | string | Posting date as Naver shows it. |
visitCount | integer | Which visit this was for the reviewer. |
viewCount | integer | Times the review was viewed. |
verification | string | How the visit was verified, e.g. 영수증 (receipt), 예약 (booking). |
language | string | Review language. |
authorNickname | string | Reviewer's public nickname (often partly masked by Naver). |
keywords | array | Keywords the reviewer picked. |
visitContext | array | Visit context tags, e.g. 데이트 (date), 혼밥 (dining alone). |
orderedItem | string | Item ordered or booked (null if not shown). |
photoUrls | array | Review photos. |
videoUrls | array | Review videos. |
ownerReply | object | Owner reply: text, date (null if none). |
Example record
{"placeId": "1273833411","name": "홍대카페","category": "카페,디저트","categoryCodes": ["220036","220052","220563"],"businessType": "cafe","url": "https://map.naver.com/p/entry/place/1273833411","mobileUrl": "https://m.place.naver.com/place/1273833411/home","phone": null,"virtualPhone": null,"address": "서울특별시 마포구 서교동 363-17","roadAddress": "서울 마포구 어울마당로 68","district": "서울 마포구 서교동","latitude": 37.551176,"longitude": 126.9214848,"distance": "5.3km","rating": 4.84,"visitorReviewCount": 1796,"blogReviewCount": 2212,"bookingReviewCount": 0,"saveCount": "20,000+","imageCount": 12,"imageUrl": "https://naverbooking-phinf.pstatic.net/20250512_190/1747039631107tWYKO_PNG/%B7%E7%C7%C1%C5%BE%BB%E7%C1%F8_%C5%A9%B1%E2%C1%B6%C1%A4_20250109-1-1-1-light-1.png","imageUrls": ["https://naverbooking-phinf.pstatic.net/20250512_190/1747039631107tWYKO_PNG/%B7%E7%C7%C1%C5%BE%BB%E7%C1%F8_%C5%A9%B1%E2%C1%B6%C1%A4_20250109-1-1-1-light-1.png","https://naverbooking-phinf.pstatic.net/20250512_295/1747040136560yza7R_JPEG/KakaoTalk_20250512_174219279----.jpg"],"amenities": ["남/녀 화장실 구분","단체 이용 가능"],"businessStatus": "영업 종료","businessStatusText": "11:00에 영업 시작","shortReview": "다양한 층별 컨셉으로 골라 앉는 재미","description": "서울최대규모 8개층 홍대카페 <ㅎㄷ카페>\n\n서울 최대규모 복합문화공간 공연, 문화, 예술, 카페, 루프탑\n\n9F ROOF TOP - VIEW\n8F COFFEE BAR\n7F MEDIA ART\n6F LP - MUSIC\n5F GALLERY\n4F STONE VALLEY\n3F PLANT\nB1 ㅎ","hasBooking": false,"bookingUrl": null,"hasNaverPay": false,"talktalkUrl": "http://talk.naver.com/w7ib1cu?frm=pnmb","delivery": false,"tableOrder": false,"preOrder": false,"pickup": false,"coupons": [{"title": "1,500원 할인 쿠폰","description": "알림받기한 고객님들께 드려요","type": "discount","url": "https://m.booking.naver.com/coupon/placeId/1273833411/promotion/634032"}],"michelinGuide": null,"tvPrograms": [],"isNewOpening": false,"wheelchairAccessible": null,"repeatVisitNote": null,"searchQuery": "홍대 카페","searchRank": 1,"detailsFetched": true,"directions": "홍대입구역 9번 출구에서 638m 도보 8분 이내\n\n합정역 3번 출구에서 635m 도보 8분 이내\n\n상수역 1번 출구에서 511m 도보 8분 이내","openingHours": [{"day": "매일","dayKo": "매일","open": "11:00","close": "21:00","breaks": [],"lastOrder": null,"closed": false,"note": null}],"openingHoursNote": "연중무휴","upcomingClosures": [],"menus": [{"name": "에그타르트","price": 3500,"priceText": "3,500원","description": null,"imageUrl": "https://ldb-phinf.pstatic.net/20241214_102/1734156952503abyVX_JPEG/KakaoTalk_20241214_150428147.jpg","badges": [],"isSetMenu": false},{"name": "우유크림 소금빵","price": 5500,"priceText": "5,500원","description": "진한 버터를 가득 넣은 프리미엄 소금빵에 우유크림을 가득채워 짭짤함과 달콤한 소금빵","imageUrl": null,"badges": [],"isSetMenu": false}],"menuCount": 14,"menuImageUrls": ["https://ldb-phinf.pstatic.net/20260113_202/1768290344294wp9A1_JPEG/%C4%C9%C0%CC%C5%A9.jpg","https://ldb-phinf.pstatic.net/20251223_133/1766471788702XVKrV_JPEG/%C8%AB%B4%EB%B8%DE%B4%BA01.jpg"],"homepage": "https://https//www.hongdaesquare.co.kr/in_corporate_promotion/in_corporate_promotion.php","websites": [{"url": "https://https//www.hongdaesquare.co.kr/in_corporate_promotion/in_corporate_promotion.php","type": "블로그","isPrimary": false},{"url": "https://www.hongdaesquare.co.kr","type": "홈페이지","isPrimary": false},{"url": "https://www.instagram.com/hongdae.cafe/","type": "인스타그램","isPrimary": false}],"keywords": ["공연","예술"],"facilities": ["남/녀 화장실 구분","단체 이용 가능"],"parking": {"description": null,"free": null,"fee": null,"valet": null},"petsAllowed": null,"paymentMethods": [],"subwayStations": [{"name": "상수역","line": "6","exit": "1","walkMinutes": 8,"walkMeters": 513}],"busStations": [{"name": "레드로드입구","stopCode": "14879","walkMinutes": 1,"walkMeters": 63,"routes": ["마포08","마포16"]},{"name": "레드로드입구","stopCode": "14884","walkMinutes": 2,"walkMeters": 149,"routes": ["마포08"]}],"photoReviewCount": 1460,"reviewerCount": 195,"reviewThemes": [{"theme": "만족도","code": "total","count": 1020},{"theme": "맛","code": "taste","count": 775}],"reviewMenuMentions": [{"menu": "커피","count": 501},{"menu": "케이크","count": 190}],"reviewKeywords": [{"keyword": "인테리어가 멋져요","category": null,"count": 1165},{"keyword": "커피가 맛있어요","category": null,"count": 1012}],"blogReviews": [{"title": "2026 청년문화주간 ‘요즘 청년, 요즘 문화’|홍대에서 만나는 무료 강연·공연·문화체험✨","url": "https://m.blog.naver.com/mcstkorea/224397397671","source": "블로그","blogName": "도란도란 문화놀이터","date": "2026.09.02.","excerpt": "9월 4일(금)부터 5일(토)까지 서울 홍대에서 <2026 청년문화주간, ‘요즘 청년, 요즘 문화’>가 열립니다. 올해 청년문화주간의 주제는 ‘사유의 깊이를 더하고 취향을 나누다’입니다. 조승연 작가를 비롯해 문화예","thumbnailUrl": "http://blogfiles.naver.net/MjAyNjA5MDFfMjMy/MDAxNzg4MjQ0ODE1MDQ1.0RoK20OLzYOW1s5IB8vRJmOtjH9GRI1TDVJEzfdDdmUg.6g3r6WqgUs6lVcrEJS5gzjG-irqTd3ckfrxhUScRBi0g.PNG/%A1%DA%282026%29_%BA%ED%B7%CE%B1%D7_%BD%E6%B3%D7%C0%CF%28%C6%F9%C6%AE_%B1%B3%C3%BC%29.png#533x533"},{"title": "홍대 층별 테마가 다른 이색 대형카페 ㅎㄷ카페","url": "https://m.blog.naver.com/q7313q/224380627395","source": "블로그","blogName": "삐더리의 일상의순간들","date": "2026.08.16.","excerpt": "안녕하세요 주말에 홍대 근처에서 여유로운 시간을 보낼 수 있는 멋진 공간을 찾다가 정말 놀라운 곳을 발견하게 되었어요. 홍대입구역, 상수역, 합정역 근처에서 약속 장소를 고를 때마다 수많은 카페들 중에서 어디를 가야","thumbnailUrl": "http://blogfiles.naver.net/MjAyNjA4MThfMzcg/MDAxNzg3MDMzNzE0NTk1.tgzOWdbGkOQdQBq5fQ5d3qn5xyaJvurPmlIrHVTbMoUg.LTAlgjou5yFDgnACKMBuX0tHTgswT16yUVOm1G5Xkm8g.GIF/%A4%BE%A4%A7.gif#1080x1080#g"}],"broadcasts": [],"photoUrls": ["https://naverbooking-phinf.pstatic.net/20250512_190/1747039631107tWYKO_PNG/%B7%E7%C7%C1%C5%BE%BB%E7%C1%F8_%C5%A9%B1%E2%C1%B6%C1%A4_20250109-1-1-1-light-1.png"],"mediaReviewCount": 6256,"couponCount": 1,"naverBookingUrl": null,"regionCode": "09440120","staticMapUrl": "https://simg.pstatic.net/static.map/v2/map/staticmap.bin?center=126.9214848%2C37.551176&level=16&dataversion=178.03&caller=naver_mstore&markers=pos%3A126.9214848%2037.551176%7Ctype%3Ac%7Ccolor%3Ablue%7Clabel%3Arestaurant","reviews": [{"reviewId": "6aae38a3c75861538513f3ec","rating": 5,"text": "분위기가 다양해서 좋아요","visitedDate": "2026-09-19T07:22:00.000Z","visitedLabel": "9.19.토","createdLabel": "9.19.토","visitCount": 2,"viewCount": 0,"verification": "영수증","language": "ko","authorNickname": "jyn****","keywords": ["커피가 맛있어요","디저트가 맛있어요"],"visitContext": ["예약 없이 이용","바로 입장","친목","지인・동료"],"orderedItem": null,"photoUrls": ["https://pup-review-phinf.pstatic.net/MjAyNjA5MTlfMTc1/MDAxNzg5ODAyNjU3NTQx.57bDnaj1E70mUZJEOaf4AlXx5f6q4w8qHFJKUnGCJIIg.gi6IZVuHLF6hqNW4fTcCQRkibD-0peBrG3lrMOXRBTgg.JPEG/20260919_162319.jpg.jpg?type=w1500_60_sharpen"],"videoUrls": [],"ownerReply": null},{"reviewId": "6aae35e53e86b039eea546e2","rating": 5,"text": "추천합니다^^","visitedDate": "2026-09-19T07:12:00.000Z","visitedLabel": "9.19.토","createdLabel": "9.19.토","visitCount": 2,"viewCount": 0,"verification": "영수증","language": "ko","authorNickname": "이문수","keywords": ["커피가 맛있어요","인테리어가 멋져요","친절해요"],"visitContext": ["예약 없이 이용","바로 입장","친목","지인・동료"],"orderedItem": "유기농오렌지쥬스","photoUrls": [],"videoUrls": [],"ownerReply": null}],"reviewsFetched": 5,"contentHash": "a30534004574f648","scrapedAt": "2026-09-19T13:44:07.754Z"}
Examples
Top 100 restaurants around Gangnam Station, with details:
{"searchQueries": ["강남역 맛집"],"searchCenter": "37.4979,127.0276","maxResultsPerQuery": 100}
Every café in a map area, past the 300 limit:
{"searchQueries": ["카페"],"boundingBox": "126.97,37.55,127.01,37.58","maxResultsPerQuery": 0}
Most-reviewed Hongdae restaurants that deliver and are open now:
{"searchQueries": ["홍대 맛집"],"sortBy": "reviewTotalCount","deliveryOnly": true,"openNow": true,"maxResultsPerQuery": 50}
Specific places with their 200 newest reviews:
{"startUrls": [{ "url": "https://map.naver.com/p/entry/place/11724463" }],"placeIds": ["2065894706"],"includeReviews": true,"maxReviewsPerPlace": 200}
Fast lead list without details, several districts:
{"searchQueries": ["강남 피부과", "서초 피부과", "송파 피부과"],"maxResultsPerQuery": 300,"includeDetails": false}
💰 Pricing
$1.49 per 1,000 places, with full place details included. Visitor reviews, when switched on, are $0.39 per 1,000 reviews. You only pay for places and reviews actually delivered. Failed retries are never charged.
| Results | Places only | Places + 20 reviews each |
|---|---|---|
| 100 places | ~$0.15 | ~$0.93 |
| 1,000 places | ~$1.49 | ~$9.29 |
| 10,000 places | ~$14.90 | ~$92.90 |
| 100,000 places | ~$149.00 | ~$929.00 |
Flat-rate alternatives typically charge $29–$49/month regardless of usage.
Use Max places in total and Max reviews per place to control your spend exactly.
Performance
| Run size | Typical time |
|---|---|
| 100 places with details | under 30 seconds |
| 300 places with details and 5 reviews each | about 1 minute |
| 1,500 places with details (area sweep) | about 5–6 minutes |
| 1,500 places without details | under 1 minute |
Known limitations
- A single Naver search returns at most 300 places. Use
boundingBoxto cover a larger set. - Naver paces heavy traffic. Large runs slow down at times rather than fail; the scraper waits and retries automatically.
- Values are in Korean as published by Naver (names, categories, addresses, menus). Field names are English.
- Filters and sort orders follow Naver's restaurant and café search and have limited effect on other categories.
- Reviews are capped at 1,000 per place.
Technical details
- Source: map.naver.com (Naver Place): South Korean businesses of every category
- Coverage: all of South Korea, by keyword, map area or place link
- Retry: automatic retry with backoff and route switching when Naver paces requests
Rate this actor
If this scraper does its job, a short review on the Reviews tab helps other users find it. Something not working? Open an issue on the Issues tab instead — issues get fixed.
Need a custom scraper?
Unfenced Group builds Apify actors for any website — for free.
If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.
Get in touch: www.unfencedgroup.nl