# Naver Shopping Price Scraper: Korea Prices & Sellers (No Login) (`benthepythondev/naver-shopping-price-scraper`) Actor

Naver Shopping products by Korean keyword: price, discount, coupon price, seller, rating, review and purchase counts, wishlist count, delivery and category ids. Reads Naver's own search, no login or proxy, up to 5,000 products per keyword through Naver's filters.

- **URL**: https://apify.com/benthepythondev/naver-shopping-price-scraper.md
- **Developed by:** [Ben](https://apify.com/benthepythondev) (community)
- **Categories:** E-commerce, Lead generation, Marketing
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## 🛒 Naver Shopping Price Scraper: Korea Prices & Sellers (No Login)

Get Naver Shopping (네이버쇼핑) products for any Korean keyword: current price, price before discount, coupon price, seller, seller badge, rating, review count, purchase count, wishlist count, delivery fee, fast-delivery type and Naver category ids. No Naver account, no API key, no cookies and no proxy needed. Export to JSON/CSV/Excel, run on a schedule, call via API, or connect to Make, Zapier or n8n.

**Price:** $0.002 per product on the Free plan, $0.0019 Bronze, $0.0017 Silver, $0.0015 from Gold up, plus $0.00005 per run start. Keywords without products, products outside your price range and sponsored products you switch off are not charged.

### 🔎 What is the Naver Shopping Price Scraper?

Naver is South Korea's largest search engine, and Naver Shopping is where most Korean shoppers compare prices. This Actor reads the shopping list that Naver's own search shows for a keyword (the list a shopper sees on m.search.naver.com), in Naver's order and with Naver's rank. To go past that list, it uses the filters Naver offers for the keyword (makers, brands, specifications): every filter adds up to 90 more products, so one keyword such as 노트북 gives about 2,000 different products.

Because it reads Naver's web search and not the Naver Shopping site, it needs no login and no Korean proxy, and a run of a few hundred products takes seconds.

#### What data does it extract?

- **Product:** Naver product id (`nvMid`), title, image, product page and mobile page
- **Price:** current price, price before discount, discount percent, coupon price, delivery fee, currency
- **Seller:** store name and id, badge (공식 official, 인증 certified), number of sellers for price-comparison products
- **Demand signals:** average rating, review count, purchase count, wishlist count (`keepCount`)
- **Placement:** keyword, rank in Naver's list, sponsored flag, card type (product, price-comparison catalog, ad)
- **Catalog:** Naver category ids, purchase options with their lowest price, promotions, Smart Store, brand store, overseas and hot-deal flags

### ⬇️ Input

| Field | Type | Description |
|---|---|---|
| `keywords` | array | Korean search words, for example 노트북, 립스틱, 에어팟. One search per keyword. |
| `maxProductsPerKeyword` | integer | Default 20, up to 5,000. Above Naver's first list (60 to 90) the filters are used. |
| `useFilters` | boolean | Default on. Off returns only Naver's own list with its ranks. |
| `includeAds` | boolean | Default on. Sponsored products are marked `isAd`; off skips them (not charged). |
| `minPrice` / `maxPrice` | integer | Price range in won (KRW). Products outside it are skipped and not charged. |

#### Example input

```json
{
  "keywords": ["노트북", "립스틱"],
  "maxProductsPerKeyword": 300,
  "includeAds": false,
  "minPrice": 10000
}
```

### ⬆️ Output

```json
{
  "keyword": "노트북",
  "rank": 2,
  "foundVia": null,
  "nvMid": "84417974537",
  "productName": "베이직스 베이직북14 사무용 가벼운 업무용 인강용 미니 노트북 14인치 8GB 256GB",
  "cardType": "ORGANIC_CARD",
  "isAd": false,
  "isCatalog": false,
  "price": 598000,
  "originalPrice": 959000,
  "discountRate": 37,
  "couponPrice": 593000,
  "currency": "KRW",
  "deliveryFee": 0,
  "fastDeliveryType": "ARRIVAL_GUARANTEE",
  "mallName": "베이직스 스토어",
  "mallId": "ncp_1o8z5m_01",
  "mallGrade": "공식",
  "sellerCount": null,
  "averageReviewScore": 4.77,
  "totalReviewCount": 14697,
  "purchaseCount": 2070,
  "keepCount": 8453,
  "isSmartStoreProduct": true,
  "isBrandStore": false,
  "categoryIds": ["50000003", "50000151"],
  "options": [],
  "imageUrl": "https://shopping-phinf.pstatic.net/main_8441797/84417974537.15.jpg",
  "productUrl": "https://smartstore.naver.com/main/products/6873474215",
  "scrapedAt": "2026-10-25T22:40:00+00:00"
}
```

A price-comparison product (`isCatalog: true`) has no single seller: `price` is its lowest price, `productUrl` is its catalog page and `options` lists the variants with their lowest prices. Products found through a filter have `rank: null` and `foundVia` names the filter, for example `제조사: LG전자`. The run's key-value store holds a `SUMMARY` record with the count per keyword.

### 💡 Use cases

- 💰 **Price monitoring:** track the price, discount and coupon price of your products and your competitors' on Korea's main shopping search, on a daily schedule.
- 📈 **Rank tracking:** see where your product stands in Naver's list for the keywords that matter, and which competitors buy sponsored places.
- 🧭 **Market research:** size a Korean product category by sellers, price bands, reviews and purchase counts before you enter it.
- 🤝 **Lead generation:** find the Smart Store and brand-store sellers of a category for wholesale or partnership outreach.

### 🤖 For AI agents

One input to copy: `{"keywords": ["에어팟"], "maxProductsPerKeyword": 50}`. Inputs are arrays and plain numbers, no credential is needed, and a keyword without shopping results ends as a successful run with zero rows and a status message.

### ⚠️ Limits, stated plainly

- **Not every keyword has a shopping list in Naver's search.** Broad fashion words (운동화, 백팩, 의자) show a fashion theme block on mobile; the Actor then reads the desktop list, which has about 8 products plus filters. A more specific word (나이키 운동화, 노트북 백팩) gives the full list.
- **The count per keyword depends on Naver's filters.** A keyword with many makers and specs reaches thousands of products; one with few filters ends earlier. The run summary says how many each keyword gave.
- **No Naver Shopping sort orders.** Rows come in Naver's relevance order, then filter by filter. Use `minPrice` and `maxPrice` for a price band.
- **English keywords return fewer products** than Korean ones.
- **One row per keyword and product.** A product found by two keywords appears under both, because its rank differs per keyword.
- **No reviews text, no full seller list, no price history.** This Actor reads search results only.

### ❓ FAQ

**Do I need a Naver account or a Korean proxy?** No. The Actor reads Naver's public web search with plain requests from Apify's servers.

**How many products can I get per keyword?** Naver's own list holds 60 to 90. With filters on, typically several hundred to about 2,000, up to the 5,000 cap.

**Are prices in won?** Yes, all prices are KRW as Naver shows them.

**What is `keepCount`?** How often shoppers saved the product to their Naver wishlist (찜). With `purchaseCount` and `totalReviewCount` it is a good demand signal.

**What does `isCatalog` mean?** Naver groups the same model sold by many stores into a price-comparison catalog. Such rows carry the lowest price and the number of sellers.

**Why are some ranks empty?** Ranks belong to Naver's own list. Products from a filter have no position there, and `foundVia` tells which filter found them.

**Am I charged for empty results?** No. Only saved products are charged. Keywords with no shopping list, products outside your price range and skipped ads cost nothing beyond the run start.

**Can I schedule it?** Yes. Save your input as a Task and add a schedule; each run returns the current prices.

**Is it legal to scrape Naver Shopping?** The Actor collects public product listings that anyone sees without logging in, and no personal data of shoppers. Check Naver's terms and the laws that apply to you (for example the Korean Personal Information Protection Act, GDPR) before you use the data, and do not use seller contact data for unsolicited messages.

**Something is missing or broken?** Open an issue on the Actor's Issues tab with the keyword; it is answered within one business day.

### 🔗 You might also like

- [Naver Map Reviews and Blog Scraper](https://apify.com/benthepythondev/naver-map-reviews-blog-scraper)
- [TikTok Shop Scraper](https://apify.com/benthepythondev/tiktok-shop-scraper)
- [Google Maps Business Scraper](https://apify.com/benthepythondev/google-maps-business-scraper)

**Keywords:** naver shopping scraper, 네이버쇼핑 크롤링, 네이버 쇼핑 가격 수집, naver price tracker, korea ecommerce data, naver smartstore products, naver shopping api, korean price monitoring, naver shopping rank tracker, 네이버 쇼핑 순위, korea product prices, naver catalog lowest price, naver seller list, korean market research, naver shopping export csv, naver product search, no login naver scraper

# Actor input Schema

## `keywords` (type: `array`):

Search words as a Korean shopper types them, for example 노트북, 립스틱 or 에어팟. Korean words return many more products than English ones. Each keyword is one search.

## `maxProductsPerKeyword` (type: `integer`):

Naver's own list gives about 60 to 90 products per keyword. Above that the Actor reads one filter of the keyword after another (makers, brands, specs) until this number is reached or the filters are used up.

## `useFilters` (type: `boolean`):

On: more products per keyword (each maker, brand or spec filter adds up to 90). Off: only Naver's own list with its ranks.

## `includeAds` (type: `boolean`):

Sponsored products are part of Naver's list and are marked isAd. Turn off to skip them; skipped products are not charged.

## `minPrice` (type: `integer`):

Keep only products at or above this price in won. Products outside the range are not charged.

## `maxPrice` (type: `integer`):

Keep only products at or below this price in won.

## Actor input object example

```json
{
  "keywords": [
    "노트북"
  ],
  "maxProductsPerKeyword": 20,
  "useFilters": true,
  "includeAds": true
}
```

# Actor output Schema

## `results` (type: `string`):

No description

## `summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keywords": [
        "노트북"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("benthepythondev/naver-shopping-price-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "keywords": ["노트북"] }

# Run the Actor and wait for it to finish
run = client.actor("benthepythondev/naver-shopping-price-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keywords": [
    "노트북"
  ]
}' |
apify call benthepythondev/naver-shopping-price-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,benthepythondev/naver-shopping-price-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/5mg4Yg4Z3YQeWpwr4/builds/xFpFaqVWDhsHVrgKl/openapi.json
