Back to skills
SkillHub ClubShip Full StackFull Stack

naver-shopping

Search for products on Naver Shopping. Use when the user wants to find product prices, links, or compare items in the Korean market.

Packaged view

This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.

Stars
3,072
Hot score
99
Updated
March 19, 2026
Overall rating
C4.0
Composite score
4.0
Best-practice grade
A92.0

Install command

npx @skill-hub/cli install openclaw-skills-naver-shopping

Repository

openclaw/skills

Skill path: skills/dryoo/naver-shopping

Search for products on Naver Shopping. Use when the user wants to find product prices, links, or compare items in the Korean market.

Open repository

Best for

Primary workflow: Ship Full Stack.

Technical facets: Full Stack.

Target audience: everyone.

License: Unknown.

Original source

Catalog source: SkillHub Club.

Repository owner: openclaw.

This is still a mirrored public skill entry. Review the repository before installing into production workflows.

What it helps with

  • Install naver-shopping into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
  • Review https://github.com/openclaw/skills before adding naver-shopping to shared team environments
  • Use naver-shopping for development workflows

Works across

Claude CodeCodex CLIGemini CLIOpenCode

Favorites: 0.

Sub-skills: 0.

Aggregator: No.

Original source / Raw SKILL.md

---
name: naver-shopping
description: Search for products on Naver Shopping. Use when the user wants to find product prices, links, or compare items in the Korean market.
---

# Naver Shopping Search

Use this skill to search for products on Naver Shopping using the Naver Search API.

## Usage

Run the search script with a query:

```bash
/Users/dryoo/.openclaw/workspace/skills/naver-shopping/scripts/search_shopping.py "상품명"
```

### Options

- `--display <number>`: Number of results to show (default: 5, max: 100)
- `--sort <sim|date|asc|dsc>`: Sort order (sim: similarity, date: date, asc: price ascending, dsc: price descending)

### Example

```bash
/Users/dryoo/.openclaw/workspace/skills/naver-shopping/scripts/search_shopping.py "아이폰 16" --display 3 --sort asc
```

## Environment Variables

Requires the following in `.env`:
- `NAVER_Client_ID`
- `NAVER_Client_Secret`


---

## Skill Companion Files

> Additional files collected from the skill directory layout.

### _meta.json

```json
{
  "owner": "dryoo",
  "slug": "naver-shopping",
  "displayName": "Naver Shopping Search",
  "latest": {
    "version": "1.0.0",
    "publishedAt": 1770629738906,
    "commit": "https://github.com/openclaw/skills/commit/6176c1e4cd166cefb4a5475a8c8ca114d915e2e3"
  },
  "history": []
}

```

### scripts/search_shopping.py

```python
#!/usr/bin/env python3
import os
import sys
import json
import urllib.request
import argparse

def search_shopping(query, display=5, sort='sim'):
    client_id = os.getenv('NAVER_Client_ID')
    client_secret = os.getenv('NAVER_Client_Secret')

    if not client_id or not client_secret:
        return {"error": "NAVER_Client_ID or NAVER_Client_Secret not found in environment variables."}

    encText = urllib.parse.quote(query)
    url = f"https://openapi.naver.com/v1/search/shop.json?query={encText}&display={display}&sort={sort}"
    
    request = urllib.request.Request(url)
    request.add_header("X-Naver-Client-Id", client_id.strip())
    request.add_header("X-Naver-Client-Secret", client_secret.strip())
    
    # Debug: print headers (excluding secret)
    # print(f"ID: {client_id.strip()}", file=sys.stderr)
    
    try:
        response = urllib.request.urlopen(request)
        rescode = response.getcode()
        if rescode == 200:
            response_body = response.read()
            return json.loads(response_body.decode('utf-8'))
        else:
            return {"error": f"Error Code: {rescode}"}
    except Exception as e:
        return {"error": str(e)}

if __name__ == "__main__":
    parser = argparse.ArgumentParser(description='Naver Shopping Search')
    parser.add_argument('query', help='Search query')
    parser.add_argument('--display', type=int, default=5, help='Number of results (1-100)')
    parser.add_argument('--sort', default='sim', choices=['sim', 'date', 'asc', 'dsc'], help='Sort order')
    
    args = parser.parse_args()
    
    results = search_shopping(args.query, args.display, args.sort)
    
    if "error" in results:
        print(json.dumps(results, indent=2, ensure_ascii=False))
        sys.exit(1)
        
    print(json.dumps(results, indent=2, ensure_ascii=False))

```

naver-shopping | SkillHub