Naver Blog Search Scraper (네이버 블로그 검색) avatar

Naver Blog Search Scraper (네이버 블로그 검색)

Pricing

from $2.00 / 1,000 scraped posts

Go to Apify Store
Naver Blog Search Scraper (네이버 블로그 검색)

Naver Blog Search Scraper (네이버 블로그 검색)

Search Naver Blog by keyword and extract every matching post — title, snippet, author, publish date, thumbnails, 내돈내산 flag, and optional full body text, hashtags, likes and comments. Filter by date. Export as JSON, CSV, or Excel.

Pricing

from $2.00 / 1,000 scraped posts

Rating

0.0

(0)

Developer

Harish Garg

Harish Garg

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

21 hours ago

Last modified

Categories

Share

Search Naver Blog by keyword and extract the matching posts — title, snippet, author, publish date, thumbnails and the 내돈내산 (self-purchased) flag. Turn on full content to also get the full body text, images, hashtags, likes (공감) and comment count of each post. Filter by date, sort by relevance or newest, and collect more than 1,000 posts per keyword.

Export the posts as JSON, CSV, Excel, XML or HTML, or read them from the API.

No Naver account. No login. No coding needed.

What does Naver Blog Search Scraper do?

Type the keywords that you would search on Naver Blog (네이버 블로그 검색). For each keyword, the scraper returns the matching posts in Naver's order:

  • Post data — title, search snippet, desktop and mobile post URL, publish date, thumbnails, and whether the post has a video.
  • Author data — nickname, blog name, blog URL and profile image.
  • 내돈내산 flag — selfPurchased: true when Naver labels the post as bought with the author's own money (not sponsored).
  • Blog Market flag — isMarketPost: true for a Naver Blog Market (블로그마켓) sales post.
  • Full content (optional) — the full body text and HTML, every image in the post, hashtags (해시태그), likes (공감) with the count of each reaction type, and the comment count.
  • More than 1,000 posts per keyword — Naver Blog search shows at most 1,000 posts for a keyword. This scraper can collect thousands of posts for one keyword.
  • Many keywords in one run — each keyword is searched separately, and each post is tagged with its keyword and rank.

Use cases

  • Market and consumer research — Naver Blog is where Koreans write product reviews, restaurant visits and travel stories. Collect what people say about a brand, a product or a place.
  • Influencer marketing — Find the bloggers who write about your keyword. See which posts are 내돈내산 and which are not.
  • SEO for the Korean market — See which posts rank for a keyword on Naver Blog. Study their titles, hashtags and length.
  • Trend and brand monitoring — Sort by newest and run the scraper every day to follow a topic or a brand.
  • NLP, LLM and RAG datasets — Collect clean Korean text by topic for sentiment analysis, classification or AI pipelines.

How to scrape Naver Blog in Apify Console

  1. Click Try for free and sign in to Apify. A free account is enough.
  2. In Search keywords, add one keyword per line, for example 캠핑 or 강남 맛집.
  3. Set Max posts per keyword. The default is 100.
  4. Optional: select Newest first, set a date range, or turn on Include full post content.
  5. Click Start.
  6. Open the Output tab. View the posts as a table, or download them as JSON, CSV, Excel, XML or HTML.

Input

FieldTypeDefaultDescription
keywordsstring[]—The search keywords, one per line. Korean keywords match best. Each keyword is searched separately. Required
maxResultsinteger100The most posts to return for each keyword. It can be more than 1,000. 0 = all posts
sortBystringrelevancerelevance (정확도순, Naver's default order) or newest (최신순)
dateFromstring—Only posts published on or after this date (Korea time). A date such as 2026-01-01, or a period such as 7 days, 2 weeks, 3 months
dateTostring—Only posts published on or before this date (Korea time). Same formats as dateFrom. Empty = up to today
includePostContentbooleanfalseAlso get the full body text and HTML, images, hashtags, likes and comment count of each post. Runs are slower

Input examples

The 100 most relevant posts for one keyword

{
"keywords": ["캠핑"]
}

The newest posts of the last 30 days for two keywords, with full content

{
"keywords": ["캠핑", "강남 맛집"],
"maxResults": 200,
"sortBy": "newest",
"dateFrom": "30 days",
"includePostContent": true
}

All posts for a keyword in one month

{
"keywords": ["아이폰 17 후기"],
"maxResults": 0,
"dateFrom": "2026-09-01",
"dateTo": "2026-09-30"
}

Output

You get one row for each post that a keyword finds, tagged with the keyword and the post's rank. Example with full content:

{
"keyword": "캠핑",
"rank": 1,
"blogId": "kasakyu",
"logNo": "224423813746",
"url": "https://blog.naver.com/kasakyu/224423813746",
"mobileUrl": "https://m.blog.naver.com/kasakyu/224423813746",
"title": "당일캠핑하기 좋은 화성 청려수련원 숲속캠크닉 후기",
"snippet": "초보 캠퍼로써 당일캠핑하러 가끔씩 가던 캠핑장이 있는데요 아침부터 저녁까지만 텐트를 치고 ...",
"nickName": "1서어주니8",
"blogName": "준&코 가족일상",
"blogUrl": "https://blog.naver.com/kasakyu",
"profileImageUrl": "https://blogpfthumb-phinf.pstatic.net/.../KakaoTalk_20260208_205943.jpg?type=s1",
"publishedAt": "2026-09-27T05:15:00.000Z",
"thumbnailUrl": "https://blogthumb.pstatic.net/.../숲속캠크닉.jpg?type=s2",
"thumbnails": ["https://blogthumb.pstatic.net/.../숲속캠크닉.jpg?type=s2"],
"hasVideo": false,
"selfPurchased": true,
"isMarketPost": false,
"content": "내돈내산 인증\n방문\n새싹동산 청려수련원\n경기도 화성시 동탄구 중동 273-2 ...",
"contentHtml": "<div class=\"se-component ...\">...</div>",
"contentLength": 3145,
"images": ["https://mblogthumb-phinf.pstatic.net/.../01.jpg?type=w800"],
"imageCount": 38,
"tags": ["청려수련원", "화성캠핑", "당일캠핑", "경기도캠핑"],
"commentCount": 12,
"sympathyCount": 19,
"reactions": { "like": 19 },
"contentStatus": "ok",
"scrapedAt": "2026-10-11T12:31:54.696Z"
}

The fields from content to contentStatus are in the output only when Include full post content is on.

Output fields

FieldDescription
keyword, rankThe keyword that found the post, and the post's position in that keyword's results
blogId, logNoThe blogger's ID and the post's number
url, mobileUrlThe desktop and mobile post URLs
title, snippetThe post title and the search snippet, as plain text
nickName, blogName, blogUrlThe author's nickname, blog name and blog URL
profileImageUrlThe author's profile image
publishedAtThe publish time (ISO 8601, UTC)
thumbnailUrl, thumbnailsThe first thumbnail, and all the thumbnails that Naver shows for the post
hasVideotrue when the post has a video
selfPurchasedtrue when Naver labels the post 내돈내산 (bought with the author's own money)
isMarketPosttrue for a Naver Blog Market (블로그마켓) sales post
content, contentHtmlThe full body text (clean) and the body HTML. Full content only
contentLengthThe number of characters in content. Full content only
images, imageCountThe image URLs in the post, and their number. Full content only
tagsThe post hashtags. Full content only
commentCountThe number of comments. Full content only
sympathyCount, reactionsThe total likes (공감), and the count of each reaction type. Full content only
contentStatusok, empty, not_found (deleted or private post), fetch_failed or budget_reached (the run's maximum cost was reached). Full content only
scrapedAtWhen the post was scraped (UTC)

Use Naver Blog Search Scraper with the Apify API

Run the scraper and read the results from any programming language with the Apify API. Get your API token in Apify Console under Settings → API & Integrations, and replace <YOUR_API_TOKEN> below.

HTTP (cURL) — run the scraper and get the posts in one call:

curl -X POST "https://api.apify.com/v2/acts/hgservices~naver-blog-search-scraper/run-sync-get-dataset-items?format=json" \
-H "Authorization: Bearer <YOUR_API_TOKEN>" \
-H "Content-Type: application/json" \
-d '{ "keywords": ["캠핑", "강남 맛집"], "maxResults": 50, "sortBy": "newest" }'

Change format=json to format=csv or format=xlsx to get a spreadsheet. This call waits up to 5 minutes. For large runs, start the run with POST /v2/acts/hgservices~naver-blog-search-scraper/runs, and read the dataset when the run finishes.

JavaScript / Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('hgservices/naver-blog-search-scraper').call({
keywords: ['강남 맛집'],
maxResults: 100,
sortBy: 'newest',
dateFrom: '7 days',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const post of items) {
console.log(post.rank, post.publishedAt, post.title, post.url);
}

Python (apify-client 3.0 or later) — find the 내돈내산 reviews for a product, with the most-liked posts first:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("hgservices/naver-blog-search-scraper").call(run_input={
"keywords": ["아이폰 17 후기"],
"maxResults": 300,
"includePostContent": True,
})
if run is None:
raise RuntimeError("The run was not found.")
posts = [
post
for post in client.dataset(run.default_dataset_id).iterate_items()
if post["selfPurchased"]
]
posts.sort(key=lambda post: post.get("sympathyCount") or 0, reverse=True)
for post in posts[:10]:
print(post["sympathyCount"], post["title"], post["url"])

Use Naver Blog data in Claude, ChatGPT and other AI assistants

This scraper works as a tool for AI assistants through the Apify MCP server. Your assistant can find the scraper, read its input options, run it, and use the posts in its answer.

Claude (claude.ai or Claude Desktop) — Go to Settings → Connectors, add a custom connector, and enter https://mcp.apify.com. Sign in to Apify when Claude asks.

Claude Code

$claude mcp add --transport http apify https://mcp.apify.com

ChatGPT — Turn on Developer mode in Settings → Apps & Connectors → Advanced settings. Then create a connector with the MCP server URL https://mcp.apify.com.

Cursor, VS Code and other MCP clients — Add https://mcp.apify.com as a remote MCP server. To give the assistant only this scraper, use https://mcp.apify.com?tools=hgservices/naver-blog-search-scraper.

Then ask in plain language:

Use the Naver Blog Search Scraper to get the 50 newest Naver Blog posts about 강남 맛집, and list the restaurants that people mention most.

Search Naver Blog for 다이슨 에어랩 후기 with full content. Summarize what the 내돈내산 reviewers like and dislike, in English.

Find the Naver bloggers who wrote about 제주 캠핑 in the last 3 months, and make a table of their blog names, post titles and likes.

Integrations and scheduling

Connect the scraper to the tools that you already use with Apify integrations: Google Sheets, Slack, Zapier, Make, n8n, Airbyte, Keboola and more. Use webhooks to call your own endpoint when a run finishes.

Use Schedules in Apify Console to run the scraper automatically. For example, sort by Newest first, set Published from to 1 day, and run the scraper every day to get each day's new posts about your brand.

Good to know

  • More than 1,000 posts. Set Max posts per keyword above 1,000, or to 0 for all posts. On very popular keywords (for example 캠핑), one day can have more than 1,000 posts. Then you get up to 1,000 posts for each day.
  • Fast runs without full content. The search data (title, snippet, author, date, 내돈내산 flag) comes fast. Turn on full content only when you need the body text, hashtags or likes.
  • One post, many keywords. When two keywords find the same post, the post is in the output once for each keyword, with that keyword's rank.
  • Korea time. The date range uses Korea Standard Time (KST), as Naver does. publishedAt is in UTC.

FAQ

Do I need a Naver account? No. You need only an Apify account. The scraper uses the public Naver Blog search, with the same results that every visitor sees.

Can I get more than 1,000 posts for a keyword? Yes. Naver Blog search itself shows at most 1,000 posts for a keyword, but this scraper can go further. Set Max posts per keyword above 1,000, or to 0 for all posts.

Does it get the comment text? No. It gets the number of comments. Use Include full post content to get commentCount.

What about deleted or private posts? Naver search can still show a post that its author deleted or made private. With full content on, such a post gets contentStatus: "not_found", and the search data is still in the row.

Can I search in English? Yes, but most Naver Blog posts are in Korean, so Korean keywords find many more posts.

Is it legal to scrape Naver Blog? The scraper collects only publicly available posts and never signs in. You are responsible for using the data in line with Naver's Terms of Service and the laws that apply to you, including personal-data laws.

Support

Did you find a bug, or do you need a field that is not here? Open an issue on the Issues tab. Custom solutions are available on request.

This scraper is not affiliated with or endorsed by Naver.