Weibo 微博 Scraper - Hot Search, Posts, Comments & Users
Pricing
from $4.00 / 1,000 results
Weibo 微博 Scraper - Hot Search, Posts, Comments & Users
Scrape Sina Weibo (微博): hot search list (微博热搜), keyword and date-range post search, post details, comments and replies with commenter IP location, reposts, reactions and user profiles. No login or cookies needed. For social listening and China market research. Export JSON, CSV or Excel.
Pricing
from $4.00 / 1,000 results
Rating
0.0
(0)
Developer
Silkline
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
37 minutes ago
Last modified
Categories
Share
Weibo Scraper extracts public data from Weibo 微博 (weibo.com, also known as Sina Weibo) and returns clean, flat JSON. It covers the live hot search list (微博热搜), keyword search, advanced search by date range, post details, public comments and every reply to a comment, user profiles with recent posts, public following lists, reposts, post reactions and user search. Public profile fields of the users in the results are included, such as user ID, avatar, IP location (IP属地), gender and verification. No Chinese-language skills, proxies, cookies or login are needed, and you can use it as a Weibo API: call it over HTTP or with the Apify Python or JavaScript client and get the same JSON back.
What is Weibo?
Weibo (微博), often called Sina Weibo, is a large Chinese public social network built around short posts. People, brands, media and public figures publish posts with text, images and video, and other users comment, repost and react. Its hot search list (热搜) shows which topics are trending at the moment.
What data can you get?
The Actor has 11 modes. Each mode takes a different input and returns a different item type.
| Mode | Give it | You get |
|---|---|---|
hot | nothing | the current trending list: rank, keyword, heat (hotness), label, link |
search | a keyword | posts: text, author with ID, avatar, verification and IP location, likes, comments, reposts, publish time, link |
advancedSearch | a keyword, optional startDate and endDate | posts in that date range: text, author, source, counts, image and video flags, link |
post | post links or IDs | the same post fields for each post |
comments | post links or IDs | comment text, likes, reply count, time, plus each commenter's public profile: user ID, nickname, avatar, IP location, gender, location, bio, followers, verification. includeReplies adds the first replies under each comment (off by default, billed like comments, long threads may be partial) |
replies | comment IDs (commentId from a comments run) | every reply under a comment, with each replier's public profile and IP location |
reposts | post links or IDs | each repost: text, reposter's public profile, IP location, time, counts, link |
likes | post links or IDs | the people who reacted to a post (about 50 per post, the platform's own limit), with reaction type and public profile |
user | UIDs or profile links | profile (nickname, avatar, gender, location, bio, verification, followers, post count) plus recent posts |
following | UIDs or profile links | the accounts it follows, with profile fields, newest follows first |
userSearch | a keyword | matching accounts: user ID, nickname, avatar, follower count, link |
Every item has a type field: post, comment, user, hot, following, repost, liker or userResult.
Post and repost fields (search, advancedSearch, post, user, reposts modes)
| Field | Description |
|---|---|
text | Post text in the original language |
likes, comments, reposts | Engagement counts |
publishedAt | Publish time |
authorName, authorId, authorUrl | Author nickname, numeric user ID and profile link |
authorIpLocation | IP location shown with the post (published in), e.g. a province |
authorAvatar | Author's avatar image URL (largest available) |
authorVerified, authorVerifiedType | Whether the author is verified, and the platform's verification type code (-1 or 220 for none) |
postId, mblogid, url | Numeric post ID, short post ID and post link |
imageCount | Number of images |
isPinned | Whether the post is pinned |
originalPostId | reposts only (repost items): the post that was reposted |
publishedAtText | advancedSearch only: publish time as Weibo's search page shows it (for example 10月09日 23:59, Beijing time, no year) |
source | advancedSearch only: where the post was published from, such as a super topic or app name |
postKind | advancedSearch only: original, repost and so on, as the search page labels it |
hasVideo | advancedSearch only: whether the post has a video |
Comment and reply fields (comments, replies modes)
| Field | Description |
|---|---|
text | Comment text |
likes, replyCount | Likes and number of replies |
publishedAt | Comment time |
authorName, authorId | Commenter nickname and numeric user ID |
authorIpLocation | IP location shown with the comment (from), e.g. a province |
authorGender | Commenter's gender: male or female |
authorLocation | Location the commenter shows on their profile |
authorBio | Commenter's bio as published |
authorFollowers | Commenter's follower count |
authorAvatar | Commenter's avatar image URL |
authorVerified, authorVerifiedType | Verification flag and type code |
commentId | Comment ID (use it as input for replies mode) |
parentCommentId | ID of the top-level comment a reply belongs to; null on top-level comments |
postId | The post the comment is under |
User profile fields (user mode)
| Field | Description |
|---|---|
uid, nickname, url | User ID, nickname and profile link |
followers, following, postCount | Follower, following and post counts |
verified, verifiedType, verifiedReason | Verification flag, type code and verification text |
bio | Bio as published |
gender | male or female |
location | Location shown on the profile |
avatarUrl | Avatar image URL (largest available) |
Trending fields (hot mode)
| Field | Description |
|---|---|
rank | Position on the hot search list (empty for sponsored slots) |
keyword | Trending topic |
hotness | Heat value |
label | Label shown next to the topic |
url | Link to the topic search |
Following, reactions and user search
| Field | Item types | Description |
|---|---|---|
uid, nickname, avatarUrl, followers, url | following, liker, userResult | Public profile basics |
bio, gender, location, verified, verifiedType, verifiedReason, following, postCount | following, liker | The same profile fields as user mode; some are often empty (see Tips and limits) |
ofUserId | following | The account whose following list this is |
reaction | liker | Reaction type: like, haha, surprised, sad, angry, tip or hug |
likedPostId | liker | The post that was reacted to, as you gave it |
The full field list is in the dataset schema on the Actor page.
How to use Weibo Scraper
- Open the Actor on Apify and click Try for free (or Start).
- Choose a mode, for example Trending list (hot search) or Post comments.
- Fill in the input for that mode: a keyword, post links, user IDs or comment IDs. The hot mode needs no input.
- Set
maxResultsto the number of items you want in total. - Click Start and wait for the run to finish.
- Open the dataset and export it as JSON, CSV or Excel, or fetch it through the API.
Input
| Field | Type | Required | What it does | Default |
|---|---|---|---|---|
mode | string | required | What to scrape: search, post, comments, user, hot, following, reposts, likes, replies, userSearch, advancedSearch | search |
keyword | string | optional | Search keyword for search, userSearch and advancedSearch. Chinese keywords return the best results. | 原神 |
posts | array of strings | optional | Weibo post links or IDs for post, comments, reposts and likes, e.g. https://weibo.com/6593199887/Rlf5vlWRz or 5350628895231161 | none |
users | array of strings | optional | Weibo UIDs or profile links for user and following, e.g. 6593199887 or https://weibo.com/u/6593199887. Accounts that hide their following list return nothing and are not billed. | none |
includeReplies | boolean | optional | Comments mode: also return the replies shown under each comment. Each reply is billed like a comment. | false |
commentIds | array of strings | optional | Replies mode: numeric comment IDs, e.g. the commentId of a comment from comments mode. Returns every reply under each comment. | none |
startDate | string | optional | advancedSearch: first day to search, like 2026-10-01. Set together with the end date, or leave both empty to search all time. | none |
endDate | string | optional | advancedSearch: last day to search (the whole day is included), like 2026-10-10 | none |
maxResults | integer | optional | Maximum number of items to return in total for this run (1 to 5,000). You are charged per item returned. | 20 |
maxResults is the total number of items for the whole run. The run stops as soon as it is reached, or when the spending limit you set in the run options is used up.
Trending list:
{ "mode": "hot", "maxResults": 50 }
Keyword search:
{ "mode": "search", "keyword": "原神", "maxResults": 50 }
Comments with replies:
{ "mode": "comments", "posts": ["https://weibo.com/6593199887/Rlf5vlWRz"], "includeReplies": true, "maxResults": 200 }
Following list:
{ "mode": "following", "users": ["6593199887"], "maxResults": 500 }
Advanced search by date range:
{ "mode": "advancedSearch", "keyword": "原神", "startDate": "2026-10-01", "endDate": "2026-10-10" }
With "includeReplies": true in comments mode, the replies the platform shows under each comment are returned right after their comment, with parentCommentId set. Replies are billed like comments and count toward maxResults; long reply threads may be partial. To get every reply under a comment, use replies mode with the commentId.
Output example
Post item (values are illustrative):
{"type": "post","postId": "5350628895231161","mblogid": "Rlf5vlWRz","url": "https://weibo.com/6593199887/Rlf5vlWRz","text": "Example post text","authorName": "ExampleAccount","authorId": 6593199887,"authorUrl": "https://weibo.com/u/6593199887","authorAvatar": "https://example.com/avatar.jpg","authorVerified": true,"authorVerifiedType": 0,"authorIpLocation": "上海","publishedAt": "2026-10-05T04:00:01Z","reposts": 51,"comments": 26,"likes": 612,"imageCount": 0,"isPinned": false}
Comment item:
{"type": "comment","postId": "5350628895231161","commentId": "5350631234567890","parentCommentId": null,"text": "Example comment text","authorName": "ExampleUser","authorId": 1234567890,"authorAvatar": "https://example.com/avatar2.jpg","authorVerified": false,"authorVerifiedType": -1,"authorIpLocation": "广东","authorGender": "female","authorLocation": "广东 广州","authorBio": "Example bio","authorFollowers": 328,"publishedAt": "2026-10-05T05:12:40Z","likes": 14,"replyCount": 2}
User profile item:
{"type": "user","uid": 1234567890,"nickname": "ExampleAccount","url": "https://weibo.com/u/1234567890","avatarUrl": "https://example.com/avatar3.jpg","gender": "male","location": "北京","bio": "Example bio","verified": true,"verifiedType": 0,"verifiedReason": "Example verification text","followers": 125000,"following": 310,"postCount": 4210}
Trending item:
{"type": "hot","rank": 1,"keyword": "示例话题","hotness": 1250000,"label": "热","url": "https://s.weibo.com/weibo?q=example"}
How much does it cost?
The Actor uses pay-per-event pricing: a small start fee per run plus a fee per item returned.
| Event | What it covers | Paid plans |
|---|---|---|
| Run start | charged once per run | $0.005 |
| Result | one post, comment, reply, repost, reaction, following entry, search hit or trending entry | $0.004 |
| Profile | one user profile | $0.0092 (Bronze), $0.0083 (Silver), $0.0075 (Gold, Platinum, Diamond) |
Example: a search run on a paid plan that returns 100 posts costs $0.005 + 100 x $0.004 = about $0.41.
On the free Apify plan, every run returns a sample dataset: a real result of this Actor's prefilled input, captured on the date shown in the run status, so you can see exactly what the output looks like. Your own input is not used and nothing is charged. To run your own searches, use any paid Apify plan.
The start fee is charged once per run, when the first request to the data source succeeds, even if that request returns nothing. It is not charged when the data source fails from the start or rejects all the post, user or comment IDs you gave, or when the spending limit cannot cover it. Items are charged only when they are actually returned. Set a maximum cost per run in the run options and the Actor stops when it is reached.
Use cases
- Brand and PR monitoring: track mentions of your brand, product or competitors and read what people say in the comments and replies.
- Trend spotting: pull the hot search list (微博热搜) on a schedule and see which topics rise and fall, with rank and heat.
- Influencer research: compare followers, verification and post engagement of accounts in your niche, and find accounts with user search.
- Audience reaction analysis: see who reposted or reacted to a post, which reaction types they used, and the IP locations (provinces) commenters post from.
- Event and campaign research: use advanced search with a date range to collect posts about a launch or event in a specific period.
- AI and NLP datasets: collect Chinese social posts and comments for sentiment analysis or retrieval.
Integrations and API
You can start runs through the Apify API, run the Actor on a schedule, trigger webhooks when a run finishes, and connect it to integrations such as Zapier, Make and Google Sheets. It also works with AI agents through the Apify MCP server. Python example:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("clover_folktale/weibo-scraper").call(run_input={"mode": "hot", "maxResults": 50})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
Another Python example for the trending list: weibo_trending.py.
Tips and limits
- Pagination: raise
maxResults(up to 5,000 per run); pagination is handled for you. - Free plan. Every run on the free Apify plan returns a stored sample dataset (a real result of the prefilled input); your own input is not used and nothing is charged. Use any paid Apify plan to run your own searches.
- User posts:
authorIpLocationis empty for posts from user mode because Weibo's profile timeline doesn't carry it. Search results andpostmode do include it. - Following lists: many accounts hide their following list, and Weibo caps how deep a list goes (roughly the first 1,000 entries). A hidden or empty list returns nothing and is not billed; the run reports it as nothing found rather than failing. In the following list,
bio,locationandverifiedReasonare empty for accounts that never filled them in, andpostCountis empty. - Reposts:
textis often just the platform's default "转发微博" when the reposter added no comment. - Reactions (
likesmode): the platform returns one page of about 50 per post, with no further pages. - Advanced search:
publishedAtTextis the date as Weibo's search page prints it (no year, no seconds); there is no ISO timestamp, IP location or verification flag.startDateandendDatecover whole days. - Replies:
postIdis empty when the platform doesn't say which post the comment is under. WithincludeRepliesin comments mode, long reply threads may be partial; use replies mode for every reply. - Hot search:
rankis empty for sponsored slots, which Weibo doesn't number. - Search volume: search returns the posts Weibo ranks for the keyword; the number per page varies, so you may see fewer posts than on weibo.com.
- Language: post text and comments are returned in the original language. Chinese keywords give the best search results.
FAQ
Do I need a Weibo account or cookies? No. You don't need a login, cookies or proxies.
Is it legal? Does it collect personal data? The Actor only returns publicly visible information. That includes the public profile of users who appear in the results, such as user ID, avatar, IP location, gender, location, verification and bio, as published on the platform. Private messages and anything not publicly visible are never collected. Bios are returned as published, including any business contact info the creator put there. You are responsible for using the data in line with applicable laws and Weibo's terms.
How fresh is the data? Data is collected when you run the Actor. The hot mode returns the trending list as it is at the time of the run.
Why are some fields empty? Some fields are only available in certain modes, or are left empty by the platform or the user. See Tips and limits above for the full list.
How many results can I get?
Up to 5,000 items per run with maxResults. Some lists have platform limits: about 50 reactions per post and roughly 1,000 entries for a following list.
Can I schedule runs and export the data? Yes. Like any Apify Actor, it can run on a schedule, be started via the API, and send results to integrations. You can export each dataset as JSON, CSV or Excel.
Are results in Chinese? Post text and comments are returned in the original language. Field names are in English.
Something looks wrong or a field is empty. What should I do? Open an issue on the Actor page with the run link; the Actor is monitored daily.
More tools from the same developer
- Douyin 抖音 Scraper - Videos, Comments, User IDs & IP Location
- Xiaohongshu 小红书 RedNote Scraper - Notes, Comments & User IP
- Zhihu 知乎 Scraper - Answers, Articles, Comments & Users
- Bilibili B站 Scraper - Videos, Comments, Subtitles & User IDs
- WeChat Official Account 公众号 Scraper - Articles & Read Counts
- Douban 豆瓣 Scraper - Movies, Ratings, Comments & Reviews