Naver Search Scraper (통합검색) avatar

Naver Search Scraper (통합검색)

Pricing

from $4.00 / 1,000 scraped search result pages

Go to Apify Store
Naver Search Scraper (통합검색)

Naver Search Scraper (통합검색)

Scrape Naver integrated search (통합검색) results as ranked blocks — 파워링크 ads, 블로그, 카페, 지식iN, 뉴스, 플레이스, 쇼핑, 웹사이트 and more — for any keyword. One dataset item per SERP page.

Pricing

from $4.00 / 1,000 scraped search result pages

Rating

0.0

(0)

Developer

Harish Garg

Harish Garg

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

Scrape Naver search results — the way Koreans actually see them. Unlike Google, a Naver 통합검색 (integrated search) page is not a list of ten blue links; it's a blended feed of ranked blocks: 파워링크 ads, 블로그, 카페, 지식iN, 뉴스, 플레이스, 네이버쇼핑, 웹사이트 and more. This Actor fetches those pages for any keyword and returns one structured record per SERP page, with every block in its real ranked order — so you can see not just what ranks on Naver, but which kind of Naver content wins each query.

Built to run on the Apify platform: schedule runs, call it from the API, export to JSON/CSV/Excel, and rely on rotating Korean residential proxies so Naver serves you the same results a real user in Korea gets.

Why use Naver Search Scraper?

Naver owns ~55–60% of Korean search. Winning in Korea means understanding Naver's blended SERP, not Google's. Use this Actor to:

  • Track keyword rankings across 블로그 / 카페 / 지식iN / 뉴스 / 플레이스 — per block, per position.
  • Monitor 파워링크 ads — who's bidding on your keywords and what copy they run.
  • Do Korean SEO & content research — which content type Naver surfaces for a query (blog vs. café vs. shopping) tells you where to publish.
  • Watch brand & competitor mentions across Naver's UGC ecosystem.
  • Feed pipelines — clean JSON for dashboards, alerts, or LLM/RAG ingestion.

How to use Naver Search Scraper

  1. Open the Actor and go to the Input tab.
  2. Enter one or more search terms (Korean works best), one per line — e.g. 강남 맛집.
  3. Pick a search surface통합검색 (integrated) is the default blended page.
  4. Set Max pages per query (you're billed per page scraped).
  5. Click Start. When it finishes, open the Output tab or Export to JSON/CSV/Excel.

That's it. Korean residential proxying, throttling, and retries are handled for you.

Input

FieldTypeDescription
queriesarraySearch terms, one per line. Korean recommended. Required.
searchTypestringintegrated (통합검색, default), or a single vertical: web, blog, cafe, kin, news, shopping, image, video, influencer.
maxPagesPerQueryintegerResult pages per term (~10 results/page). Default 1.
sortBystringrelevance, date_desc, date_asc.
dateRangestring'' (any), 1d, 1w, 1m, 6m, 1y.
includeAdsbooleanInclude 파워링크 / 비즈사이트 ad blocks. Default true.
blocksarrayFor 통합검색, keep only these block types (empty = all).
mobileResultsbooleanScrape the mobile layout instead of desktop.
saveHtmlbooleanStore each page's raw HTML in the key-value store.
useOpenApibooleanAlso query Naver's official Open API and attach as openApiResults (needs your own credentials).
naverClientId / naverClientSecretstringYour Naver Open API credentials (only for enrichment).
languagestringAccept-Language hint. ko recommended.
maxConcurrencyintegerParallel page fetches (1–10).

Example input

{
"queries": ["강남 맛집", "삼겹살"],
"searchType": "integrated",
"maxPagesPerQuery": 2,
"sortBy": "relevance",
"includeAds": true
}

Output

One dataset item per SERP page. Each item gives you the same results in two shapes, so you can pick whichever fits your workflow:

  • results — a flat list, one entry per result, each tagged with its blockType, blockPosition, and page-wide rank. This is the Google-style view: just map over it.
  • blocks — the ranked blocks exactly as Naver stacks them (파워링크 · 블로그 · 카페 · 지식iN · 뉴스 · 플레이스 · 웹사이트 …), preserving the real on-page layout.
{
"searchQuery": {
"term": "강남 맛집",
"url": "https://search.naver.com/search.naver?query=%EA%B0%95%EB%82%A8+%EB%A7%9B%EC%A7%91&where=nexearch&start=1",
"where": "nexearch",
"searchType": "integrated",
"device": "DESKTOP",
"page": 1,
"sortBy": "relevance",
"dateRange": ""
},
"resultsTotal": null,
"hasNextPage": true,
"resultCount": 42,
"results": [
{
"rank": 1,
"blockType": "place",
"blockPosition": 1,
"rankInBlock": 1,
"type": "place",
"title": "육싸롱 이도점",
"url": "https://map.naver.com/p/entry/place/2073228508",
"category": "한식",
"address": "제주 제주시 아라이동",
"placeId": "2073228508"
},
{
"rank": 12,
"blockType": "blog",
"blockPosition": 2,
"rankInBlock": 1,
"type": "blog",
"title": "강남역 맛집 베스트 10",
"url": "https://blog.naver.com/foodie/223...",
"description": "직접 다녀온 강남 맛집을 정리했습니다",
"date": "3일 전",
"authorOrChannel": "푸디"
}
],
"blocks": [
{
"type": "place",
"label": "플레이스",
"position": 1,
"items": [
{ "type": "place", "title": "육싸롱 이도점", "url": "https://map.naver.com/p/entry/place/2073228508", "category": "한식", "address": "제주 제주시 아라이동", "placeId": "2073228508" }
]
}
]
}

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel. The Results (flat) dataset view gives one row per result for spreadsheet / no-code users; Blocks (flattened) gives one row per block if you care about the page layout.

Data fields

FieldDescription
searchQuery.term / urlThe search term and the exact Naver URL scraped.
searchQuery.searchType / whereWhich surface (통합검색 / vertical).
searchQuery.pagePage number within the query.
resultsTotalNaver's reported total, when shown (often null on 통합검색).
hasNextPageWhether a further page exists (null when Naver shows no pager).
resultCountNumber of results extracted on this page.
results[]Flat list: rank, blockType, blockPosition, type, title, url, plus per-type extras below.
blocks[].type / positionBlock type (powerlink, blog, cafe, kin, news, place, shopping, influencer, image, video, web) and its rank on the page.
blocks[].items[]Results in the block (same objects as results[], minus the block-context fields).
item: title / url / descriptionClean title, destination URL, and snippet (when present).
item: datePosting date / meta ("3일 전", "30.9만 인용"), when shown.
item: displayedUrlVisible URL breadcrumb or ad domain — useful when url is an ad redirector.
item: category / address / badges플레이스 only: business category, address, and status chips (예약/쿠폰 …).
item: authorOrChannel / pressBlog/café author or news outlet, when shown.
openApiResults(Optional) clean Open API items, when enrichment is enabled.
htmlSnapshotKey(Optional) key-value store key for the saved raw HTML.

Pricing / How much does it cost to scrape Naver?

This Actor uses pay-per-event pricing, mirroring Apify's Google Search Scraper: you pay per SERP page scraped — not per result — so cost is predictable regardless of how densely a page is packed. Optional Naver Open API enrichment is charged per API call.

Naver runs are inherently a little pricier than Google ones because they require Korean residential proxies (Naver blocks datacenter and foreign IPs). To control cost, keep maxPagesPerQuery low and scrape only the verticals you need via searchType / blocks.

Tips & advanced options

  • Korean queries return the best results — Naver is a Korean-first engine.
  • Scope tightly: use searchType for a single vertical, or blocks to keep only the block types you care about, to cut noise and cost.
  • Time-sensitive research: combine sortBy: date_desc with dateRange for fresh results.
  • Debugging extraction: turn on saveHtml to inspect the exact HTML behind a record.

FAQ, disclaimers & support

  • Is scraping Naver legal? This Actor collects publicly available search results. You are responsible for using the data in compliance with Naver's Terms of Service, robots directives, and applicable laws (including personal-data and copyright law). Do not use it to infringe rights or overload Naver's servers.
  • Why blocks instead of "organic results"? Because that's what a Naver page is. Forcing Google's organic-links model onto Naver would misrepresent the results. See the block model above.
  • Results look incomplete for a query. Naver's markup changes often and varies by keyword, device, and region. Enable saveHtml and open an issue with the snapshot so extraction can be tuned.
  • Support / feature requests: use the Issues tab on the Actor's page.