note.com Hashtag Scraper: Articles & Creators avatar

note.com Hashtag Scraper: Articles & Creators

Pricing

from $1.50 / 1,000 results

Go to Apify Store
note.com Hashtag Scraper: Articles & Creators

note.com Hashtag Scraper: Articles & Creators

Scrape note.com hashtag pages into rows: article title, URL, price, paywall flag, likes, comments, publish date and creator (name, urlname, X handle, custom domain). Optional details add body text, categories, follower counts and public links. Japan residential proxy built in. Unofficial.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

reventadata

reventadata

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Unofficial. This Actor is not affiliated with, authorised by, endorsed by, or in any way officially connected to note.com or note株式会社. "note" is a trademark of its respective owner and is used here only to describe what this tool reads. It reads the same public pages a logged-out browser does.

Reads note.com (Japan's creator and blog platform) by hashtag and returns one row per article: title, URL, publication time, price in JPY, free/paid/membership flags, likes, comments, header image, and the creator's handle, name and X account. With includeDetails on, it also opens each article page for the readable text (the whole article when free, the part above the paywall when paid), the paywalled character count, categories, and the creator's public profile: followers, following, note count, bio, external links (YouTube, Instagram, Facebook, LINE, TikTok...), and the URLs the creator wrote in the bio or article.

What does it do?

  1. Opens https://note.com/tag/<hashtag> (the popular list) and, with mode both or new, https://note.com/tag/<hashtag>?mode=new (the newest list).
  2. Parses the articles the page embeds: 20 on tags served as a search list, about 40-50 (37-50 measured) on large tags served as a timeline list. There is no further page on the site without its JSON API, which note.com's robots.txt closes to everyone but three search engines, so this Actor never calls it. To reach past one page, expandRelatedTags also reads up to 10 related hashtags the tag page lists (e.g. AI lists AGI, AI Agent, AI Act...).
  3. Applies your filters (keywords, excludeKeywords, freeOnly, minLikes, publishedAfter), optionally fetches the article page, and pushes the row.

Why use it?

  • Robots-clean by design: two URL shapes, both outside the site's Disallow list; no API, no search endpoint, no login, no cookies.
  • Creator data from the page itself: follower counts, bios and links come from the article page's own embedded profile object, not from a search-engine snippet.
  • Prices as the page states them: price in JPY, canRead, hasSubscription and paywalledChars are the page's own values. isFree is the page's flag on the search list and price == 0 with no membership gate on the timeline list; isPaywalled is not canRead.
  • Public data only: creator names, bios, follower counts, social handles and the URLs a creator publishes are in the rows; nothing from behind a login.

Input

FieldTypeDefaultWhat it does
hashtagsarrayrequiredHashtags as written on note.com (AI, #日記) or tag URLs (https://note.com/tag/ChatGPT).
modestringbothpopular, new, or both (two pages per tag, duplicates removed).
includeDetailsbooleanfalseFetch each article page for text, paywall count, categories and the creator profile. One request per article.
expandRelatedTagsinteger0Also read this many related hashtags (0-10) from each seed tag page.
maxItemsinteger200Stop after this many rows.
keywordsarray[]Keep an article when any term appears in its title (and, with details, text, description or bio). Case- and width-insensitive substrings (AI matches AI; kana voicing marks are kept, so バル does not match ハル).
excludeKeywordsarray[]Drop an article when any term appears in the same fields.
freeOnlybooleanfalseKeep only articles the page marks free (no price, no membership gate).
minLikesintegerunsetKeep only articles with at least this many likes.
publishedAfterstringunsetYYYY-MM-DD (Japan time) or an ISO timestamp.
proxyConfigurationobjectApify residential, JPThe measured transport. Without a proxy or on datacenter exits the site often answers a listing shell with no articles, which the Actor retries until the run clock runs low.

Sample input

{
"hashtags": ["AI"],
"mode": "both",
"includeDetails": true,
"maxItems": 10
}

Output

One row per article. Fields marked (details) are null or empty unless includeDetails is on.

FieldTypeDescription
id, keyinteger, stringnote.com article id and key (n... in the URL).
title, urlstringTitle and https://note.com/<creator>/n/<key>.
tag, listModestringThe hashtag page and list (popular / new) the article was found on.
publishedAtstringISO 8601 with the page's Japan offset, e.g. 2026-10-13T06:59:35.000+09:00.
price, currencyinteger, stringSingle-purchase price in JPY (0 when none) and JPY.
isFreebooleanThe page's free flag: no price and no membership gate.
hasSubscriptionbooleanSold through a membership or subscription.
oneshotLowestPriceinteger / nullLowest single-purchase price when the search list gives one.
isPaywalled, canReadboolean / nullWhether a logged-out visitor can read the whole article, as the page flags it.
likeCount, commentCount, imageCountinteger / nullThe page's counts (the timeline list carries likes only).
eyecatch, formatstring / nullHeader image URL; note.com editor format version.
creatorUrlname, creatorName, creatorUrl, creatorImagestringCreator handle, display name, https://note.com/<handle>, profile image.
creatorTwitterstring / nullX (Twitter) handle linked on the profile.
creatorCustomDomainstring / nullHost of the custom domain the creator publishes on (e.g. note.kidzania.jp), when the page gives one.
description (details)string / nullArticle description (empty on every page read so far).
bodyHtml, bodyText, bodyChars (details)string, string, integerThe readable part of the article as HTML, as text, and its length.
paywalledChars (details)integerCharacters behind the paywall as the page counts them (0 when free).
categories (details)arrayCategory names, e.g. ["テクノロジー", "IT"].
hashtags (details)arrayHashtags the article page lists, e.g. ["#COMEMO", "#日経"]; empty on pages that list none.
anonymousLikeCount (details)integer / nullLikes from visitors without an account.
creatorFollowers, creatorFollowing, creatorNoteCount (details)integer / nullThe creator's counts.
creatorProfile (details)string / nullBio text.
creatorExternalLinks (details)arrayExternal profile links (YouTube, Instagram, Facebook, LINE, TikTok...).
creatorSocials (details)objectLinked handles by platform, e.g. {"twitter": "goto_finance"}.
creatorCreatedAt (details)string / nullAccount creation time.
contactUrls (details)arrayURLs the creator wrote in the bio or the readable article text.
detailsStatusstringok, skipped (details off), redirect (article served from a custom domain or removed: listing fields only), failed.
matchedKeywordsarrayWhich input keywords matched.
scrapedAtstringISO 8601 UTC timestamp of the scrape.

Sample output

{
"id": 180134013,
"key": "n855f02e7507c",
"title": "【EM367】AI企業がまさかの手のひら返し!政治まで動かす「AI減速論」、これはAIバブル崩壊の始まりなのか?",
"url": "https://note.com/eminyurumazu/n/n855f02e7507c",
"tag": "AI",
"listMode": "popular",
"publishedAt": "2026-09-14T07:39:05.000+09:00",
"price": 0,
"currency": "JPY",
"isFree": false,
"hasSubscription": true,
"isPaywalled": true,
"canRead": false,
"likeCount": 545,
"commentCount": 10,
"imageCount": 15,
"eyecatch": "https://assets.st-note.com/production/uploads/images/313451721/rectangle_large_type_2_04ee56f43a968477b79e889d1a927021.jpeg?fit=bounds&quality=85&width=1280",
"format": "4.1",
"creatorUrlname": "eminyurumazu",
"creatorName": "エミン ユルマズ",
"creatorUrl": "https://note.com/eminyurumazu",
"creatorImage": "https://assets.st-note.com/production/uploads/images/93053872/profile_3941332640c9867e552957a34afc4328.jpg?fit=bounds&format=jpeg&quality=85&width=330",
"creatorTwitter": "yurumazu_note",
"bodyHtml": "<table-of-contents name=\"3ba9078b-3d29-4b49-bfc0-771c1c0d06dd\" id=\"3ba9078b-3d29-4b49-bfc0-771c1c0d06dd\"><br></table-of-contents>",
"bodyChars": 0,
"paywalledChars": 5327,
"anonymousLikeCount": 18,
"creatorFollowers": 31747,
"creatorFollowing": 5,
"creatorNoteCount": 762,
"creatorProfile": "トルコ・イスタンブール出身。日本に留学し東京大学理科一類に合格、その後同大学院にて生命工学修士を取得。2006年野村證券に入社し、M&Aアドバイザリー業務に携わる。2024年レディーバードキャピタルを設立。https://www.eminyurumazu.com/",
"creatorSocials": {
"twitter": "yurumazu_note"
},
"creatorCreatedAt": "2022-08-07T16:06:45.000+09:00",
"contactUrls": [
"https://www.eminyurumazu.com/"
],
"detailsStatus": "ok",
"scrapedAt": "2026-10-22T08:48:31.595398+00:00"
}

Limits, measured on 2026-10-22

  • One page per tag and list. A tag page embeds 20 articles (search list) or about 40-50 (37-50 measured; timeline list, large tags). The site pages further only through /api/v3/searches, which its robots.txt disallows, so the Actor stops at the page. mode: both and expandRelatedTags are the two ways to get more rows per run.
  • Keyword search is not offered. /search is disallowed by robots.txt; a hashtag is the unit. keywords filters the rows the tag pages return.
  • Per-article hashtags come with includeDetails only. The listing carries none; the article page lists them for some articles and none for others. The row always carries the tag it was found under.
  • Custom-domain creators: their article URL on note.com answers a redirect to the custom domain; the row keeps the listing fields and detailsStatus is redirect.
  • No emails are extracted. On 72 article pages read while building, no creator wrote an email address in a bio or in the readable text. The row carries the URLs, X handle and external links a creator publishes.
  • Listing shell. The site sometimes answers a tag page without its article list; the Actor detects it by parsing (0 articles on a tag page) and retries on a fresh exit. On the default Japan residential proxy 25 of 25 probe pages came back whole.
  • Comments, magazine contents, follower lists and anything behind a login are not read.

Cost

Pay per result. With includeDetails off, one request per tag page (20-50 rows); on, one more request per row. Pages go through Apify residential proxy, billed on compressed transfer (about 40 KB per tag page, 30-40 KB per article page, measured 2026-10-22).