Weibo Scraper – Hot Search, Posts, Comments & Profiles avatar

Weibo Scraper – Hot Search, Posts, Comments & Profiles

Pricing

from $4.00 / 1,000 posts

Go to Apify Store
Weibo Scraper – Hot Search, Posts, Comments & Profiles

Weibo Scraper – Hot Search, Posts, Comments & Profiles

Extract Weibo hot search (微博热搜), posts, comments, replies, user profiles and keyword search results as JSON or CSV. No login, cookies or browser needed. A cheap Weibo API alternative for China trend monitoring, brand listening and KOL research. From $1 per 1,000 rows.

Pricing

from $4.00 / 1,000 posts

Rating

0.0

(0)

Developer

Phantom Data

Phantom Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 minutes ago

Last modified

Share

Weibo Scraper — Hot Search, Posts, Comments & Profiles (No Login)

Weibo scraper and Weibo API alternative for Chinese social media data. Export the live Weibo hot search list (微博热搜), user profiles and their posts, any post by URL, comments and replies, keyword / hashtag search and trending posts from Sina Weibo (新浪微博) — no Weibo account, no cookies to paste, no browser. Clean, flat JSON you can download as CSV/Excel or call from your code.

  • ✅ Hot search ranking: ~50 topics + pinned topic with rank, heat, label (新/热/沸/爆), category and time on the list — optionally with the top posts of each topic
  • ✅ Profiles: followers, following, post count, verification, bio, location, registration date, school/company, total likes/comments/reposts
  • ✅ User posts: newest posts + full history of photo/video posts back to the first one
  • ✅ Posts by URL with comments (hot or newest first) and replies
  • ✅ Keyword & #hashtag# search (general, hot and real-time tabs combined)
  • ✅ Full text of long posts (全文), pictures in full size, video MP4 links, hashtags, mentions, region (IP location), reposted post
  • ✅ Date filters (2026-10-01, 7 days, 24 hours)
  • ✅ From $1 per 1,000 rows, no start fee — 8× to 35× cheaper than the most-used Weibo scraper ($35 per 1,000)

What can you do with this Weibo scraper?

Use caseHow
China trend monitoringSchedule the hot search every hour and get rank, heat and category of every trending topic; push it to Slack, Sheets or your BI tool.
Brand & competitor monitoring in ChinaSearch your brand, products or #hashtags# and track what Weibo users say; download comments with likes and region.
KOL / influencer researchExport profiles (followers, verification, total interactions, labels) and their recent posts with likes, comments and reposts.
Market research & sentiment analysisFeed post and comment text into sentiment, topic or LLM pipelines (RAG, summarisation, translation).
Journalism, OSINT & academiaArchive what accounts like 人民日报 publish, with timestamps (UTC + China time), media links and engagement.
Social listening dashboardsCombine hot search + keyword search + comments into one dataset with a type column.

Quick start (under 1 minute)

  1. Click Try for free. The pre-filled input reads the live hot search list and searches the keyword 华为 (10 posts).
  2. Add profiles, post URLs or more keywords when you need them, and cap the cost with Max posts and Max comments fields.
  3. Click Start. The default run takes well under a minute. Download JSON, CSV or Excel, or call it through the Apify API.

Input

Fill in any combination — everything runs in one go.

FieldWhat it does
includeHotSearchScrape the live hot search ranking (微博热搜).
hotSearchPostsPerTopicAlso get the top N posts of every hot topic (0 = off).
profilesUser ids (1669879400), links (https://weibo.com/u/1669879400, https://m.weibo.cn/u/..., https://weibo.com/rmrb) or screen names (@人民日报).
maxPostsPerProfileNewest posts per profile (default 20). 0 = only the profile row.
includeProfileInfoOne profile row per user (default on).
postUrlsPost links (https://weibo.com/<uid>/<id>, https://m.weibo.cn/status/<id>, https://m.weibo.cn/detail/<mid>) or ids.
searchKeywordsWords, brands or #hashtags# to search.
searchSortall (general + hot + real-time + more, deduplicated), general, hot or realtime.
maxPostsPerSearchPosts per keyword (default 30).
maxTrendingPostsPosts from Weibo's public trending feed (热门微博).
maxCommentsPerPostComments per post from postUrls (default 20).
commentsForAllPostsAlso get comments for posts from profiles, search and hot search.
commentSorthot (most liked first) or time (newest first).
includeReplies / maxRepliesPerCommentAlso get replies to each comment.
dateFrom / dateTo2026-10-01 (China time), ISO date-time or relative (7 days, 24 hours).
fetchFullTextDownload the full text of truncated long posts (default on).
proxyConfigurationApify Proxy (default). If Weibo rate-limits you, use residential proxies, ideally CN or HK.

If you leave everything empty, you get the hot search list.

Example: hourly hot search monitor with the top 3 posts of each topic

{
"includeHotSearch": true,
"hotSearchPostsPerTopic": 3
}

Example: brand monitoring — search + comments

{
"searchKeywords": ["小米汽车", "#华为Mate80#"],
"searchSort": "all",
"maxPostsPerSearch": 80,
"commentsForAllPosts": true,
"maxCommentsPerPost": 50,
"dateFrom": "7 days"
}

Example: KOL profiles with their last month of posts

{
"profiles": ["@人民日报", "https://weibo.com/u/1669879400"],
"maxPostsPerProfile": 500,
"dateFrom": "30 days"
}

Example: all comments and replies of one post

{
"postUrls": ["https://weibo.com/1669879400/RoDbmCVmy"],
"maxCommentsPerPost": 5000,
"commentSort": "hot",
"includeReplies": true,
"maxRepliesPerComment": 20
}

Output

Every row has a type: hot_search, profile, post, comment or error (error rows are free). Use the Posts, Comments, Hot search and Profiles views in the dataset tab, or filter by type in your code. Real samples (shortened):

{
"type": "hot_search",
"rank": 1,
"word": "武汉警方通报网约车被围堵事件",
"query": "#武汉警方通报网约车被围堵事件#",
"heat": 2890091,
"label": "新",
"category": "民生新闻",
"is_pinned": false,
"is_ad": false,
"on_list_since": "2026-11-02T14:13:22Z",
"url": "https://s.weibo.com/weibo?q=%23...%23",
"captured_at": "2026-11-02T14:29:41Z"
}
{
"type": "post",
"id": "5358704929276970",
"bid": "RoDbmCVmy",
"url": "https://weibo.com/1669879400/RoDbmCVmy",
"created_at": "2026-10-27T10:51:18Z",
"created_at_china": "2026-10-27T18:51:18+08:00",
"text": "选择困难所以都发一下🤣",
"text_complete": true,
"author_id": "1669879400",
"author_name": "Dear-迪丽热巴",
"user": {"id": "1669879400", "screen_name": "Dear-迪丽热巴", "verified": true, "avatar_url": "https://tvax1.sinaimg.cn/...", "...": "..."},
"reposts_count": 1000000,
"comments_count": 1000000,
"likes_count": 5708775,
"counts_capped": true,
"region": "上海",
"pics": ["https://wx1.sinaimg.cn/large/001P0DUIgy1iih3u5chkqj63b04eob2d02.jpg", "..."],
"video": null,
"links": [],
"hashtags": [],
"mentions": [],
"is_pinned": false,
"is_repost": false,
"reposted_post": null,
"input_type": "post",
"input": "https://weibo.com/1669879400/RoDbmCVmy"
}
{
"type": "comment",
"id": "5358705521721951",
"post_id": "5358704929276970",
"root_comment_id": "5358705521721951",
"is_reply": false,
"created_at_china": "2026-10-27T18:53:39+08:00",
"text": "每一张都绝美[期待][期待] http://t.cn/AXjKCYtz",
"likes_count": 40336,
"replies_count": 4416,
"region": "上海",
"author_name": "护舒宝",
"user": {"id": "1787569845", "verified": true, "verified_reason": "护舒宝官方微博", "followers_count": 620057, "...": "..."}
}
{
"type": "profile",
"id": "1669879400",
"screen_name": "Dear-迪丽热巴",
"followers_count": 82583288,
"following_count": 294,
"posts_count": 1941,
"verified": true,
"verified_reason": "嘉行传媒签约演员",
"location": "上海",
"registered_at": "2010-07-02T13:19:58+08:00",
"company": "嘉行传媒",
"school": "上海戏剧学院",
"total_interactions": 6255714721,
"labels": ["V指数 文娱 87.28分", "近30天视频播放量324.7万", "..."]
}

Post fields: id, bid, url, created_at (UTC), created_at_china, text, is_long_text, text_complete, author_id, author_name, user (id, screen name, verified, verification reason, followers, avatar), reposts_count, comments_count, likes_count, counts_capped, region, source (client app), pics (full-size), video (MP4 URL, page URL, duration, cover, plays), links, hashtags, mentions, is_pinned, edited, is_repost, reposted_post, input_type, input, keyword, search_tab, hot_rank, scraped_at.

Comment fields: id, post_id, post_url, root_comment_id, is_reply, reply_to, created_at, created_at_china, text, likes_count, replies_count, floor_number, region, liked_by_author, pics, author_id, author_name, user.

Pricing

Pay per event — you only pay for rows you get, no start fee:

EventPricePer 1,000
Post$0.004$4
Comment or reply$0.002$2
Profile$0.004$4
Hot search topic$0.001$1
Error rowsfree—

Examples: 1,000 posts = $4 · a post with 1,000 comments ≈ $2 · a daily hot search snapshot for a month ≈ $1.56. The most-used Weibo scraper on Apify charges $35 per 1,000 items. Set Max cost per run in the run options to cap any run — the scraper stops cleanly at your limit.

What works without login (and what does not)

This scraper only uses what Weibo shows to logged-out visitors, so you never risk an account. Measured on 2 Nov 2026:

DataWithout login
Hot search ranking✅ full list (~50 topics + pinned)
Profile info✅
Post by URL / id✅
Comments✅ deep pagination (hundreds or thousands per post)
Replies to comments✅
User posts✅ the 10 newest posts of any kind + every post with photos or video back to the first one. Older text-only posts and reposts need login.
Keyword search⚠️ first page of each tab only: about 30-80 unique posts per keyword with searchSort: all. Deeper search pages need login.
Repost lists, followers/following lists❌ need login — not offered

FAQ

Do I need a Weibo account or cookies? No. The scraper gets the same anonymous visitor cookies a browser receives when it opens weibo.com, and reads Weibo's public JSON endpoints (weibo.com/ajax and m.weibo.cn). No browser, so runs are fast and cheap (256 MB).

Why is reposts_count exactly 1000000 with counts_capped: true? Weibo displays "100万+" for very large counters and does not reveal the exact number to visitors. Treat it as "1,000,000 or more".

Why do picture links fail in my browser? Weibo's image CDN (sinaimg.cn) checks the referrer. Download them with the header Referer: https://weibo.com/. Video links contain an expiry time; download them soon after the run.

Which dates and time zones? created_at is UTC; created_at_china is Beijing time (UTC+8). Date filters without a time zone are read as China time.

Can I get more than ~80 posts for a keyword? Not without login. Run the same keywords on a schedule with searchSort: realtime and dateFrom: "24 hours" to build a growing archive — duplicates inside a run are never charged twice.

Is it legal? It only reads information that is publicly visible on Weibo without logging in and does not bypass captchas or paywalls. Weibo's terms restrict automated access; you are responsible for how you use the data (e.g. GDPR/PIPL when processing personal data).

Is this an official Weibo API? No. It is an independent tool and a no-code alternative to the Weibo API for public data.

Limits

  • Works only with what Weibo shows to logged-out visitors. Keyword search returns the first page of each tab (about 30-80 unique posts per keyword).
  • User timelines return the 10 newest posts plus every post with photos or video; older text-only posts and reposts need a login and are not offered.
  • Repost lists and follower/following lists need login and are not available.
  • Picture links need the header Referer: https://weibo.com/ and video links expire, so download media soon after the run.

Use it from code (API)

Every Apify Actor is also an API. Replace <YOUR_API_TOKEN> with the token from your Apify account (Settings, API & Integrations).

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('phantom-x64/weibo-scraper').call({
"includeHotSearch": true,
"searchKeywords": [
"华为"
],
"maxPostsPerSearch": 20
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
client = ApifyClient('<YOUR_API_TOKEN>')
run = client.actor('phantom-x64/weibo-scraper').call(run_input={
"includeHotSearch": True,
"searchKeywords": [
"华为"
],
"maxPostsPerSearch": 20
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

You can also start it from Make, Zapier, n8n or Google Sheets with the Apify integrations, schedule it, or call it as a tool from an AI agent through the Apify MCP server.

Support and feedback

Found a bug, need a new field or another source? Open an issue in the Issues tab of this Actor page. Reports with a run link are fixed fastest. If it saves you time, a short review on the Store page helps other people find it.