Naver Shopping Scraper: Prices, Malls, Reviews avatar

Naver Shopping Scraper: Prices, Malls, Reviews

Pricing

from $2.69 / 1,000 products

Go to Apify Store
Naver Shopping Scraper: Prices, Malls, Reviews

Naver Shopping Scraper: Prices, Malls, Reviews

Scrape Naver Shopping (네이버쇼핑) by keyword: one row per product with price, discount, mall, category path, reviews, rating, purchases, delivery and an ad flag. Sort by relevance or price, filter by price. No login, no API key.

Pricing

from $2.69 / 1,000 products

Rating

0.0

(0)

Developer

The Mine Works

The Mine Works

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Naver Shopping Scraper: Prices, Malls, Reviews (네이버쇼핑)

30 Naver Shopping products with price, mall, category and reviews in 19 seconds

From The Mine Works, makers of Amazon Product Scraper and B2B Leads Finder, with over 140,000 runs across 170+ public actors.

Updated 21 Oct 2026: first release. Keyword search on Naver Shopping, one flat row per product with price, discount, mall, full category path, reviews, rating, purchases, delivery and an ad flag. Sort by relevance or by price, filter by a price range. Bookmark this Actor on its Store page so it is one click away next time.

Naver Shopping (네이버쇼핑) is the shopping search inside Naver, Korea's largest search engine. It lists Smart Store sellers, outside malls such as Coupang, Himart and brand sites, and price comparison pages (가격비교) that group one model sold by many malls. This actor searches it by keyword and returns what a shopper in Korea sees, as rows you can sort and join.

Why choose this actor?

  • No API key, no login, no browser. You type keywords and press Start. The actor reads the shopping block of Naver's public search page over plain HTTP, so there is no developer application to register, no daily call quota and no captcha.
  • More than the first screen. One call returns Naver's top 90 cards. Past that the actor splits the keyword's price range into bands and reads the top cards of each band, so a run can return up to 5,000 products a keyword. In our test, 2,000 products for 운동화 came back in 142 seconds, all in shoe categories, with no duplicates.
  • The columns a seller or a brand compares. Price after discount, list price, discount percent, mall and its 공식 or 인증 badge, full Korean category path (디지털/가전 > 노트북), review count, rating, purchases, wishlist saves, delivery fee and arrival guarantee, Smart Store and Brand Store flags, and is_ad for every paid placement.

Run it on Apify

Part of The Mine Works E-commerce and marketplaces family: Ozon.ru Scraper, ⭐ Amazon Reviews Scraper, Amazon Product Scraper, Etsy Listings Scraper, AliExpress Scraper, Kleinanzeigen.de Scraper.

Try it in one minute

Paste this into the input (JSON view) and press Start. It returns the top 30 products for 노트북 (laptop). It took 19 seconds in our test run:

{
"keywords": ["노트북"],
"maxItems": 30
}

Put several keywords on separate lines to search them in one run. A product that two of your keywords find is delivered once. Korean keywords usually match more products than English ones, since most listings are written in Korean.

Apify's free plan includes $5 of credit every month, which covers about 1,350 products at this actor's Free tier price, counted for runs of 100 products with the $0.003 start fee.

Copy to your AI assistant

themineworks/naver-shopping-scraper on Apify. Searches Naver Shopping (네이버쇼핑, Korea) by keyword and returns one flat row per product with price in KRW, list price, discount, mall, category path, reviews, rating, purchases, delivery and an ad flag, with no login and no API key. Call ApifyClient("TOKEN").actor("themineworks/naver-shopping-scraper").call(run_input={"keywords": ["노트북"], "maxItems": 100}), then client.dataset(run["defaultDatasetId"]).list_items().items. Required: keywords (list of strings, Korean or English, up to 100). Optional: maxItems (default 50, 1 to 5000, per keyword), sort ("relevance" default, "price_asc", "price_desc"), minPrice and maxPrice (integers in KRW), includeAds (default true), includeCategoryNames (default true), proxyConfiguration (default Apify datacenter proxy). Product rows have no _type field and carry product_id, title, price, original_price, discount_percent, currency, card_type (product, catalog, ad, super_point), is_ad, is_price_comparison, mall_name, mall_id, mall_badge, seller_count, category_id, category_ids, category_path, review_count, rating, purchase_count, wishlist_count, delivery_fee, free_delivery, fast_delivery, is_smart_store, is_brand_store, is_overseas, is_hot_deal, naver_pay, purchase_options (name, lowest_price), image_url, product_url, channel_product_id, naver_rank, keyword, position, sort, price_band, total_results, scraped_at. Each run also writes one row with _type "summary", an "info" row, and a row with _type "error" for each keyword that could not be read; none of these is charged. Full spec: GET https://api.apify.com/v2/acts/themineworks~naver-shopping-scraper/builds/default (Bearer TOKEN), which returns inputSchema and readme. Token: https://console.apify.com/account/integrations?fpr=ymnoit&utm_source=apify-readme&utm_medium=referral

Key features

  • Keyword search in Korean or English, up to 100 keywords a run and up to 5,000 products a keyword. Each keyword also gets total_results, the number of products Naver reports for it (7,457,966 for 노트북 on 21 Oct 2026).
  • Three sorts. relevance keeps Naver's own ranking. price_asc and price_desc walk the price range from the cheapest or the most expensive end in bands small enough to be listed in full, and return rows in strict price order.
  • Price range filter. minPrice and maxPrice in won are applied by Naver before it answers, to ads as well as listings.
  • Four card types, kept apart. product is one seller's listing, catalog is a price comparison page with seller_count malls and its options with their lowest price, ad is a paid placement, super_point is Naver's promoted listing. When the same product shows as an ad and as a listing, you get one row, the listing.
  • Category names, not just ids. category_path is the full Korean path from Naver's own category tree, for example 패션잡화 > 주얼리 > 반지 > 다이아몬드반지. Every product row of our tests had it.
  • Stops cleanly. Four price bands in a row with nothing new end a keyword; six failed calls in a row end the run; the run stops before its time limit and keeps every row it read. The summary row says why.

How to use it

Basic: one keyword, Naver's order

{
"keywords": ["무선 이어폰"],
"maxItems": 200
}

Rows come in the order Naver ranks them, ads in the places Naver shows them. position is the row's place in your result, naver_rank the rank Naver gave the card.

Market scan: several keywords in one run

{
"keywords": ["노트북", "게이밍 노트북", "맥북 에어", "갤럭시북"],
"maxItems": 500
}

A product found under two keywords is delivered once, under the first keyword that found it. In our test, 노트북 and 게이밍 노트북 at 500 each returned 1,000 distinct laptops in 87 seconds.

Price band research

{
"keywords": ["다이아몬드 반지"],
"minPrice": 500000,
"maxPrice": 3000000,
"maxItems": 300,
"includeAds": false
}

Only organic listings and price comparison pages priced 500,000 to 3,000,000 won.

Cheapest offers first

{
"keywords": ["에어팟 프로 2"],
"sort": "price_asc",
"minPrice": 150000,
"maxItems": 100
}

Strict price order from the bottom of the range. Set a sensible minPrice: the very cheapest rows of a broad keyword are often accessories, deposits or phone plan listings, as on Naver's own 낮은 가격순.

Ad monitoring: who pays for your keyword

{
"keywords": ["선크림", "쿠션 팩트", "비타민C 세럼"],
"maxItems": 90
}

Filter the rows on is_ad to see which malls and brands buy placements on each keyword, at what price, next to the organic listings they compete with. Run it daily on a schedule to track changes.

Input parameters

ParameterTypeDefaultWhat it does
keywordsarray of stringsemptyKeywords, one search each, for example 노트북. Up to 100.
maxItemsinteger50Most products per keyword, 1 to 5,000.
sortstringrelevancerelevance, price_asc (cheapest first) or price_desc (most expensive first).
minPriceintegernoneLowest price in won.
maxPriceintegernoneHighest price in won.
includeAdsbooleantrueKeep paid placements (is_ad: true). Off returns organic listings and price comparison pages only.
includeCategoryNamesbooleantrueAdd the Korean category path to each row.
proxyConfigurationobjectApify datacenter proxyChange only if Naver refuses the run; residential with country KR works too.

Newest first and most reviewed first are not offered: the search surface this actor reads has no such sort. Sort the rows on review_count or purchase_count after the run instead.

What data do you get?

One row per product. Product rows have no _type field; the summary, info and error rows do, so a filter on _type separates them.

FieldWhat it is
product_idNaver product id (nvMid), the key to store and join on
titleProduct title as listed
pricePrice in won after the seller discount; the lowest price for a price comparison page
original_price, discount_percentList price and discount, when Naver shows a discount
currencyKRW
card_typeproduct, catalog, ad or super_point
is_adPaid placement (광고)
is_price_comparison, seller_countPrice comparison page (가격비교) and how many malls sell it
purchase_optionsOptions of a price comparison page with their lowest price, e.g. 256GB at 1,259,880
mall_name, mall_id, mall_badgeThe mall or Smart Store, its Naver id, and its 공식 (official) or 인증 (certified) badge
category_id, category_ids, category_pathLeaf category id, ids from the top down, and the full Korean path
review_count, ratingNumber of reviews and average score out of 5
purchase_countPurchases Naver shows for the listing
wishlist_countWishlist saves (찜)
delivery_fee, free_delivery, fast_deliveryDelivery fee in won, free delivery flag, fast delivery type such as ARRIVAL_GUARANTEE (도착보장) or TODAY_DELIVERY
is_smart_store, is_brand_store, is_overseas, is_hot_deal, naver_payListing flags
image_url, product_urlMain picture, and the link to the listing or to the price comparison page
channel_product_idProduct id at the Smart Store or the outside mall
naver_rankRank Naver gave the card in its answer
keyword, position, sort, price_bandThe search that found the product, its place in your result, the sort, and the price band of the call (`MIN
total_resultsProducts Naver reports for the keyword and price range
scraped_atWhen the row was read

Brand and maker are not part of the search cards Naver serves, so they are not separate columns; the brand is usually the first word of title, and price comparison pages carry the maker in the title.

Summary row (_type: "summary", never charged): keywords_requested, keywords_read, keywords_failed, keywords_not_started, products_delivered, charged_for, cards_seen, ads_seen, duplicates_skipped, ads_left_out, bff_list_calls, bff_count_calls, http_requests, http_megabytes, ended_on_deadline, stopped_by_max_cost, stopped_by_block_guard, shortfall_reason when fewer products came back than asked, and per_keyword, one entry per keyword with total_results, list_calls, bands, products_delivered and why it stopped. The same summary is saved as the OUTPUT record of the run.

Error rows (_type: "error", never charged): one per keyword that could not be read, with error_type (blocked, fetch_error), identifier, reason and http_status.

Stable fields for automations

These were present in every product row of our test runs (3,200 rows from 4 keywords), and their names will not change:

FieldWhat it is
product_idThe key to store and join on
titleProduct title
pricePrice in won
currencyKRW
card_typeCard type
is_adPaid placement
category_idLeaf category id
category_pathKorean category path
review_countReviews
image_urlMain picture
product_urlLink
keywordSearch that found it
positionPlace in the result
total_resultsProducts on Naver for the keyword

Optional, present only when Naver shows a value: mall_name, mall_id, purchase_count and channel_product_id (not on price comparison pages, which have many malls; 2,192 of 3,200 test rows), rating (rows with at least one review), original_price and discount_percent (1,529 of 3,200), fast_delivery, seller_count (price comparison pages only) and mall_badge.

Output examples

A Smart Store listing:

{
"product_id": "84417974537",
"title": "베이직스 베이직북14 사무용 가벼운 업무용 인강용 미니 노트북 14인치 8GB 256GB",
"price": 598000,
"original_price": 959000,
"discount_percent": 37,
"currency": "KRW",
"card_type": "product",
"is_ad": false,
"is_price_comparison": false,
"mall_name": "베이직스 스토어",
"mall_id": "ncp_1o8z5m_01",
"mall_badge": "공식",
"category_id": "50000151",
"category_ids": ["50000003", "50000151"],
"category_path": "디지털/가전 > 노트북",
"review_count": 14670,
"rating": 4.77,
"purchase_count": 2076,
"wishlist_count": 8450,
"delivery_fee": 0,
"free_delivery": true,
"fast_delivery": "ARRIVAL_GUARANTEE",
"is_smart_store": true,
"is_brand_store": false,
"is_overseas": false,
"is_hot_deal": false,
"naver_pay": true,
"purchase_options": [],
"image_url": "https://shopping-phinf.pstatic.net/main_8441797/84417974537.15.jpg",
"product_url": "https://smartstore.naver.com/main/products/6873474215",
"channel_product_id": "6873474215",
"naver_rank": 10,
"keyword": "노트북",
"position": 2,
"sort": "relevance",
"total_results": 7457966,
"scraped_at": "2026-10-20T22:26:19.948Z"
}

A price comparison page (가격비교), 163 malls:

{
"product_id": "52631236642",
"title": "삼성전자 갤럭시북4 노트북 NT750XGR-A51A 39.6cm(15.6인치) i5 16GB, 256GB",
"price": 1259880,
"currency": "KRW",
"card_type": "catalog",
"is_ad": false,
"is_price_comparison": true,
"seller_count": 163,
"category_id": "50000151",
"category_ids": ["50000003", "50000151"],
"category_path": "디지털/가전 > 노트북",
"review_count": 21202,
"rating": 4.91,
"wishlist_count": 632,
"delivery_fee": 0,
"free_delivery": true,
"is_smart_store": false,
"is_brand_store": true,
"is_overseas": false,
"is_hot_deal": false,
"naver_pay": false,
"purchase_options": [
{ "name": "256GB", "lowest_price": 1259880 },
{ "name": "512GB", "lowest_price": 1347960 }
],
"image_url": "https://shopping-phinf.pstatic.net/main_5263123/52631236642.20250124094900.jpg",
"product_url": "https://search.shopping.naver.com/catalog/52631236642",
"naver_rank": 1,
"keyword": "노트북",
"position": 7,
"sort": "relevance",
"total_results": 7457966,
"scraped_at": "2026-10-20T22:26:19.948Z"
}

A paid placement from an outside mall:

{
"product_id": "61501313481",
"title": "삼성전자 갤럭시북6 NT740VJK-KC38G",
"price": 1240000,
"currency": "KRW",
"card_type": "ad",
"is_ad": true,
"is_price_comparison": false,
"mall_name": "하이마트쇼핑몰",
"mall_id": "himart1",
"category_id": "50000151",
"category_ids": ["50000003", "50000151"],
"category_path": "디지털/가전 > 노트북",
"review_count": 0,
"purchase_count": 0,
"wishlist_count": 0,
"delivery_fee": 0,
"free_delivery": true,
"fast_delivery": "TODAY_DELIVERY",
"is_smart_store": false,
"is_brand_store": false,
"is_overseas": false,
"is_hot_deal": false,
"naver_pay": true,
"purchase_options": [],
"image_url": "https://shopping-phinf.pstatic.net/main_6150131/61501313481.1.jpg",
"product_url": "https://www.e-himart.co.kr/app/goods/goodsDetail?goodsNo=0070309617&fromShop=naver_db99&utm_source=naver&utm_medium=PRICE&utm_campaign=naver_db99",
"channel_product_id": "0070309617",
"naver_rank": 25,
"keyword": "노트북",
"position": 4,
"sort": "relevance",
"total_results": 7457966,
"scraped_at": "2026-10-20T22:26:19.948Z"
}

Pricing

Pay per event: you pay for the products you receive, plus a flat $0.003 per run, whatever memory you choose. Category names, price sorts and price filters cost nothing extra.

EventWhen it is chargedFree planBronze (Starter)Silver (Scale)Gold (Business)
product-scrapedOnce per product row stored in your dataset$3.59 per 1,000$3.59 per 1,000$3.14 per 1,000$2.69 per 1,000
run-startOnce per run, after the first call returned products$0.003$0.003$0.003$0.003

The price of one product is the price per 1,000 divided by 1,000.

Never charged:

  • a product that shows twice (as an ad and a listing, in two price bands, or under a second keyword);
  • ads you turned off with includeAds, and products outside your price range;
  • products past your maxItems;
  • the summary, info and error rows;
  • a run with no keywords, or one whose keywords return no products: the start fee is charged only once a call has returned products;
  • anything past your "Max cost per run". The actor checks the budget before each batch of rows and stops while the total is still below your limit, so the run ends SUCCEEDED with a partial result and a status message saying so.

Run it on a schedule

  1. Open the actor in Apify Console, set your input and click Save as a new task.
  2. In the task, open Schedules, click Add schedule and pick how often (every day, every Monday at 08:00 and so on).
  3. Compare runs on product_id and price to see new listings, price drops and who bought ad placements this week.
  4. Optional: add an integration (Google Sheets, Slack, a webhook) so each run lands where your team works.

FAQ

What does this actor read?

The shopping block (네이버 가격비교) of Naver's public search results and the product list behind it, as anyone in Korea sees it without logging in, plus Naver DataLab's public category tree for the category names. It does not log in, open product pages, read reviews or touch anything behind a sign in.

How many products can I get?

Up to 5,000 a keyword and 100 keywords a run. One call returns Naver's top 90 cards, ads included. For more, the actor splits the price range at the median price it has seen and reads each band, which reaches deep into big keywords: 2,000 for 운동화 in our test, all shoes. Narrow keywords end sooner, when the bands stop giving new products; the summary row's per_keyword says why each keyword stopped.

Why are rows past the first 90 in a different order from Naver's site?

Past the first call, rows come band by band, each band in Naver's order. Within your result, the first rows are Naver's top cards for the whole keyword; later rows are the top cards of each price band. Use price_band and naver_rank if you need to rebuild the order.

How exact are the price sorts?

Exact within what Naver returns. price_asc and price_desc first ask Naver how many products sit in a price band, shrink the band until it holds at most 80, then read it in full and sort it. If more than 90 products share one exact price (30,000 won is common), only Naver's top 90 at that price come back. Price sorts make more small calls, so they run slower than relevance: 300 products in 34 seconds without a proxy and about 150 seconds over the datacenter proxy in our tests.

Can I get brand, maker, reviews or the product description?

Not from this actor. The search cards Naver serves carry no separate brand or maker field, and reviews and descriptions live on each product page. The brand is usually the first word of title.

Are ads included?

Yes, by default, with is_ad: true and in the places Naver shows them. On a broad keyword about 4 in 10 cards are ads. Turn includeAds off for the organic listings and price comparison pages only.

How long does a run take?

In our tests over the Apify datacenter proxy: 19 seconds for the "Try it" input (30 products), 43 seconds for 200 products in a price range, 87 seconds for 1,000 products across 2 keywords, and 142 seconds for 2,000 products of one keyword. The default time limit is 3,600 seconds; the actor stops before it and keeps every row.

Do I need an account, cookies, an API key or a proxy?

No. Naver's own shopping web hosts refuse automated requests, but its main search answers them, and that is what the actor reads, over Apify Proxy, which is included. If you already have a Naver Search API key and prefer the official API, this actor does not need it.

Which formats can I download?

JSON, CSV, Excel, XML, RSS and HTML from the run's Storage tab or through the API. The dataset has three ready views: Products, Prices and sellers, and Ranking and ads. In CSV and Excel, category_ids and purchase_options are flattened into columns such as purchase_options/0/name.

Can I use it from Claude, ChatGPT or Cursor (MCP)?

Yes, through Apify's MCP server. Connector URL: https://mcp.apify.com/?tools=themineworks/naver-shopping-scraper

  • Claude: Settings > Connectors > Add custom connector, paste the URL, sign in with Apify.
  • ChatGPT: turn on developer mode, add an MCP connector with the URL, sign in with Apify.
  • Cursor or VS Code: add it as an HTTP MCP server with that URL.
  • Claude Code: claude mcp add -t http naver-shopping-scraper "https://mcp.apify.com/?tools=themineworks/naver-shopping-scraper"

Which actor should I use for other Korean or Asian sources?

Naver Blog Scraper for what Korean bloggers write about a product, and Taobao Products Scraper for Chinese retail prices of the same goods.

The actor reads only public search results that anyone can see without logging in, mostly prices and listings that sellers publish to be found. You are responsible for how you use the data, including Naver's terms and data protection law such as Korea's PIPA, GDPR and CCPA. This is general information, not legal advice.

Integrations

  • Google Sheets: send each run's products to a sheet with Apify's Google Sheets integration; one row per product fits a sheet as is.
  • Make, Zapier and n8n: start a run and read its dataset with the Apify apps and nodes, for example "price drops on our keywords every morning to Slack".
  • Webhooks: have Apify call your URL when a run succeeds, then fetch the dataset.
  • API and SDKs: run it from Python or JavaScript with the Apify client, or with a plain HTTP call (see "Copy to your AI assistant" above).
  • MCP clients: Claude, ChatGPT, Cursor and VS Code can run it as a tool through the connector URL in the FAQ.

More from The Mine Works

E-commerce and marketplaces

Social media and video

Leads and business directories

Marketing, SEO and reviews

LinkedIn

Real estate

Science, health and government data

Jobs and hiring

Company and business data

Food and local services

Developer and AI tools

More tools

Support

Found a keyword that returns fewer products than Naver shows, or a field that comes back empty? Open an issue in the Issues tab with the input and the run ID, and we will look at it. For a field you need or a new source, email dmineworks@gmail.com.

Search Naver Shopping by keyword and get every product back as one row, with price, discount, mall, category path, reviews, rating, purchases and an ad flag, no login and no API key.