# Scrape a Weibo post: full text, comments, replies and likers

**Use case:** 

One Weibo post (中国蓝新闻's table-tennis video report here) as one row with its full text, counts and video link; then 100 of its comments, newest first, with the replies Weibo shows a visitor, each with text, time, likes, region and the commenter's exact followers; and 20 users who liked it. Every row names the post. Put your own post id or link in posts.

## Input

```json
{
  "posts": [
    "https://m.weibo.cn/detail/5351755366794519"
  ],
  "users": [
    "1642909335",
    "https://weibo.com/u/2803301701",
    "@微博小秘书"
  ],
  "keywords": [
    "亚运会",
    "#热聊亚运会#"
  ],
  "searchTabs": [],
  "maxPostsPerKeyword": 0,
  "hotBoards": [],
  "postsPerHotTopic": 0,
  "hotTimelinePosts": 0,
  "fetchFullText": true,
  "includeAuthorProfiles": false,
  "maxCommentsPerPost": 100,
  "commentsOrder": "time",
  "includeReplies": true,
  "maxLikersPerPost": 20,
  "maxPostsPerUser": 0,
  "maxFollowersPerUser": 0,
  "maxFollowingPerUser": 0,
  "maxVideosPerUser": 0,
  "includeUserDetails": false,
  "tagPosts": false,
  "translateTo": "",
  "includeRaw": false,
  "maxItems": 0,
  "runTag": ""
}
```

## Output

```json
{
  "row_type": {
    "label": "Row type",
    "format": "string"
  },
  "input": {
    "label": "Input",
    "format": "string"
  },
  "input_index": {
    "label": "Input #",
    "format": "integer"
  },
  "inputs_merged": {
    "label": "Inputs merged",
    "format": "array"
  },
  "source_kind": {
    "label": "Source",
    "format": "string"
  },
  "status": {
    "label": "Status",
    "format": "string"
  },
  "status_detail": {
    "label": "Status detail",
    "format": "string"
  },
  "scraped_at": {
    "label": "Scraped at",
    "format": "string"
  },
  "query": {
    "label": "Query",
    "format": "string"
  },
  "search_tabs": {
    "label": "Search tabs",
    "format": "array"
  },
  "list_note": {
    "label": "List note",
    "format": "string"
  },
  "mid": {
    "label": "Post id (mid)",
    "format": "string"
  },
  "bid": {
    "label": "Post id (bid)",
    "format": "string"
  },
  "post_url": {
    "label": "Post URL",
    "format": "string"
  },
  "created_at": {
    "label": "Published",
    "format": "string"
  },
  "created_at_utc": {
    "label": "Published (UTC)",
    "format": "string"
  },
  "text": {
    "label": "Text",
    "format": "string"
  },
  "text_html": {
    "label": "Text (HTML)",
    "format": "string"
  },
  "is_long_text": {
    "label": "Long post",
    "format": "boolean"
  },
  "text_truncated": {
    "label": "Text truncated",
    "format": "boolean"
  },
  "text_length": {
    "label": "Text length",
    "format": "integer"
  },
  "reposts_count": {
    "label": "Reposts",
    "format": "integer"
  },
  "comments_count": {
    "label": "Comments",
    "format": "integer"
  },
  "likes_count": {
    "label": "Likes",
    "format": "integer"
  },
  "pictures": {
    "label": "Pictures",
    "format": "array"
  },
  "picture_count": {
    "label": "Picture count",
    "format": "integer"
  },
  "video_url": {
    "label": "Video URL",
    "format": "string"
  },
  "video_hd_url": {
    "label": "Video HD URL",
    "format": "string"
  },
  "video_duration_s": {
    "label": "Video duration (s)",
    "format": "number"
  },
  "video_title": {
    "label": "Video title",
    "format": "string"
  },
  "video_play_count": {
    "label": "Video plays (shown)",
    "format": "string"
  },
  "region": {
    "label": "Region",
    "format": "string"
  },
  "source_client": {
    "label": "Source client",
    "format": "string"
  },
  "hashtags": {
    "label": "Hashtags",
    "format": "array"
  },
  "mentions": {
    "label": "Mentions",
    "format": "array"
  },
  "links": {
    "label": "Links",
    "format": "array"
  },
  "is_repost": {
    "label": "Repost",
    "format": "boolean"
  },
  "repost_of": {
    "label": "Original post",
    "format": "object"
  },
  "edit_count": {
    "label": "Edits",
    "format": "integer"
  },
  "is_ad": {
    "label": "Promoted",
    "format": "boolean"
  },
  "matches_query": {
    "label": "Matches query",
    "format": "boolean"
  },
  "author_uid": {
    "label": "Author id",
    "format": "string"
  },
  "author_name": {
    "label": "Author",
    "format": "string"
  },
  "author_url": {
    "label": "Author URL",
    "format": "string"
  },
  "author_avatar_url": {
    "label": "Author avatar",
    "format": "string"
  },
  "author_verified": {
    "label": "Author verified",
    "format": "boolean"
  },
  "author_verified_type": {
    "label": "Author verified type",
    "format": "integer"
  },
  "author_verified_reason": {
    "label": "Author verified reason",
    "format": "string"
  },
  "author_followers": {
    "label": "Author followers",
    "format": "integer"
  },
  "author_followers_shown": {
    "label": "Author followers (shown)",
    "format": "string"
  },
  "author_followers_precision": {
    "label": "Author followers precision",
    "format": "string"
  },
  "author_following": {
    "label": "Author following",
    "format": "integer"
  },
  "author_posts_count": {
    "label": "Author posts",
    "format": "integer"
  },
  "author_gender": {
    "label": "Author gender",
    "format": "string"
  },
  "author_description": {
    "label": "Author bio",
    "format": "string"
  },
  "comments_requested": {
    "label": "Comments requested",
    "format": "integer"
  },
  "comments_delivered": {
    "label": "Comments delivered",
    "format": "integer"
  },
  "comments_note": {
    "label": "Comments note",
    "format": "string"
  },
  "likers_delivered": {
    "label": "Likers delivered",
    "format": "integer"
  },
  "likers_note": {
    "label": "Likers note",
    "format": "string"
  },
  "analysis_sentiment": {
    "label": "Sentiment",
    "format": "number"
  },
  "analysis_kind": {
    "label": "Kind",
    "format": "string"
  },
  "analysis_confidence": {
    "label": "Tag confidence",
    "format": "object"
  },
  "translation": {
    "label": "Translation",
    "format": "string"
  },
  "translation_note": {
    "label": "Translation note",
    "format": "string"
  },
  "raw": {
    "label": "Raw",
    "format": "object"
  },
  "run_tag": {
    "label": "Run tag",
    "format": "string"
  },
  "list_of": {
    "label": "List of",
    "format": "string"
  },
  "list_kind": {
    "label": "List kind",
    "format": "string"
  },
  "list_total": {
    "label": "List total",
    "format": "integer"
  },
  "uid": {
    "label": "User id",
    "format": "string"
  },
  "screen_name": {
    "label": "Screen name",
    "format": "string"
  },
  "profile_url": {
    "label": "Profile URL",
    "format": "string"
  },
  "avatar_url": {
    "label": "Avatar",
    "format": "string"
  },
  "cover_url": {
    "label": "Cover",
    "format": "string"
  },
  "verified": {
    "label": "Verified",
    "format": "boolean"
  },
  "verified_type": {
    "label": "Verified type",
    "format": "integer"
  },
  "verified_kind": {
    "label": "Verified kind",
    "format": "string"
  },
  "verified_badge": {
    "label": "Verified badge",
    "format": "string"
  },
  "verified_reason": {
    "label": "Verified reason",
    "format": "string"
  },
  "gender": {
    "label": "Gender",
    "format": "string"
  },
  "location": {
    "label": "Location",
    "format": "string"
  },
  "description": {
    "label": "Description",
    "format": "string"
  },
  "followers": {
    "label": "Followers",
    "format": "integer"
  },
  "followers_shown": {
    "label": "Followers (shown)",
    "format": "string"
  },
  "followers_precision": {
    "label": "Followers precision",
    "format": "string"
  },
  "following": {
    "label": "Following",
    "format": "integer"
  },
  "posts_count": {
    "label": "Posts",
    "format": "integer"
  },
  "total_reposts": {
    "label": "Total reposts",
    "format": "integer"
  },
  "total_comments": {
    "label": "Total comments",
    "format": "integer"
  },
  "total_likes": {
    "label": "Total likes",
    "format": "integer"
  },
  "member_rank": {
    "label": "Member rank",
    "format": "integer"
  },
  "svip": {
    "label": "SVIP",
    "format": "integer"
  },
  "birthday": {
    "label": "Birthday",
    "format": "string"
  },
  "registered_at": {
    "label": "Registered",
    "format": "string"
  },
  "ip_location": {
    "label": "IP location",
    "format": "string"
  },
  "credit_level": {
    "label": "Credit level",
    "format": "string"
  },
  "company": {
    "label": "Company",
    "format": "string"
  },
  "school": {
    "label": "School",
    "format": "string"
  },
  "labels": {
    "label": "Labels",
    "format": "array"
  },
  "details_note": {
    "label": "Details note",
    "format": "string"
  },
  "posts_requested": {
    "label": "Posts requested",
    "format": "integer"
  },
  "posts_delivered": {
    "label": "Posts delivered",
    "format": "integer"
  },
  "posts_note": {
    "label": "Posts note",
    "format": "string"
  },
  "followers_delivered": {
    "label": "Followers delivered",
    "format": "integer"
  },
  "following_delivered": {
    "label": "Following delivered",
    "format": "integer"
  },
  "videos_delivered": {
    "label": "Videos delivered",
    "format": "integer"
  },
  "post_mid": {
    "label": "Post id",
    "format": "string"
  },
  "comment_id": {
    "label": "Comment id",
    "format": "string"
  },
  "parent_comment_id": {
    "label": "Parent comment",
    "format": "string"
  },
  "is_reply": {
    "label": "Reply",
    "format": "boolean"
  },
  "reply_to_comment_id": {
    "label": "Replies to",
    "format": "string"
  },
  "like_count": {
    "label": "Comment likes",
    "format": "integer"
  },
  "reply_count": {
    "label": "Replies",
    "format": "integer"
  },
  "floor": {
    "label": "Floor",
    "format": "integer"
  },
  "user_uid": {
    "label": "Commenter id",
    "format": "string"
  },
  "user_name": {
    "label": "Commenter",
    "format": "string"
  },
  "user_url": {
    "label": "Commenter URL",
    "format": "string"
  },
  "user_verified": {
    "label": "Commenter verified",
    "format": "boolean"
  },
  "user_verified_type": {
    "label": "Commenter verified type",
    "format": "integer"
  },
  "user_verified_reason": {
    "label": "Commenter verification",
    "format": "string"
  },
  "user_followers": {
    "label": "Commenter followers",
    "format": "integer"
  },
  "user_following": {
    "label": "Commenter following",
    "format": "integer"
  },
  "user_posts_count": {
    "label": "Commenter posts",
    "format": "integer"
  },
  "user_total_likes": {
    "label": "Commenter lifetime likes",
    "format": "integer"
  },
  "user_location": {
    "label": "Commenter location",
    "format": "string"
  },
  "user_gender": {
    "label": "Commenter gender",
    "format": "string"
  },
  "user_description": {
    "label": "Commenter bio",
    "format": "string"
  },
  "board": {
    "label": "Board",
    "format": "string"
  },
  "rank": {
    "label": "Rank",
    "format": "integer"
  },
  "word": {
    "label": "Word",
    "format": "string"
  },
  "heat": {
    "label": "Heat",
    "format": "integer"
  },
  "label": {
    "label": "Label",
    "format": "string"
  },
  "category": {
    "label": "Category",
    "format": "string"
  },
  "onboard_time": {
    "label": "On board since",
    "format": "string"
  },
  "is_pinned": {
    "label": "Pinned",
    "format": "boolean"
  },
  "is_hot": {
    "label": "Hot",
    "format": "boolean"
  },
  "star_name": {
    "label": "Star",
    "format": "string"
  },
  "subject_label": {
    "label": "Subject label",
    "format": "string"
  },
  "topic_url": {
    "label": "Topic URL",
    "format": "string"
  },
  "read_count": {
    "label": "Reads",
    "format": "integer"
  },
  "mention_count": {
    "label": "Mentions",
    "format": "integer"
  },
  "claim": {
    "label": "Host",
    "format": "string"
  },
  "summary": {
    "label": "Summary",
    "format": "string"
  }
}
```

## How it works

### 1. Sign up on Apify or log in

The Weibo Scraper: Weibo Search, Hot Search, Comments, Profiles Actor is ready to run with the inputs already set for "Scrape a Weibo post: full text, comments, replies and likers". [Sign up or log in](https://console.apify.com/create-task-from-example/1eaiVmeOv4y9bO4ir) and you'll land in Apify Console with a copy of this exact task.

### 2. Start the "Scrape a Weibo post: full text, comments, replies and likers" task

The Weibo Scraper: Weibo Search, Hot Search, Comments, Profiles Actor will start running based on the input automatically. You can also change all the input fields, like posts: ids or links, users: ids, links or names, and more, to match your specific use case.

### 3. Receive the "Scrape a Weibo post: full text, comments, replies and likers" output

Monitor the progress in real time. You will be notified as soon as your dataset is complete and ready for review. Each result includes data such as row type, input, input #, and more.

### 4. Integrate into your workflow

The final output is delivered in JSON, CSV, or Excel format, ready to be plugged into your workflow. You can also [run the "Scrape a Weibo post: full text, comments, replies and likers" task via API](https://apify.com/hyperbach/weibo-scraper.md).

## About this Actor

This example demonstrates how to use [Weibo Scraper: Weibo Search, Hot Search, Comments, Profiles](https://apify.com/hyperbach/weibo-scraper.md) with a specific input configuration. Visit the [Actor detail page](https://apify.com/hyperbach/weibo-scraper.md) to learn more, explore other use cases, and run it yourself.


## How to integrate an Actor?

This Task's input is already configured above. Use it as-is rather than inventing a new one.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For full API examples (JavaScript, Python, CLI, MCP, OpenAPI), see this Task's Actor page: https://apify.com/hyperbach/weibo-scraper.md

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).
