# Weibo Scraper - Search, Comments & Brand Monitoring (`webdata_labs/weibo-search-comments-scraper`) Actor

Search public Weibo posts and extract comments, authors, engagement, evidence URLs, and optional English translations. No login fields.

- **URL**: https://apify.com/webdata\_labs/weibo-search-comments-scraper.md
- **Developed by:** [WebData Labs](https://apify.com/webdata_labs) (community)
- **Categories:** Social media, News, Automation
- **Stats:** 3 total users, 2 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $7.00 / 1,000 weibo post or comments

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

### 🔎 What does Weibo Search & Comments Scraper do?

**Search public [Weibo](https://weibo.com/) posts and extract the conversations below them** without supplying a Weibo account, phone number, browser cookie, or proxy setting. Enter Chinese or international keywords, brands, products, people, or campaign phrases. The Actor returns normalized posts, public comments, authors, engagement counts, evidence URLs, and optional English translations.

Use relevance search for market research or latest-first search for recurring mention monitoring. You can also pass numeric post IDs to collect a known post and its comments directly.

| What you need          | What the Actor returns                                       |
| ---------------------- | ------------------------------------------------------------ |
| China brand monitoring | Recent or relevant public mentions and comment threads       |
| Consumer research      | Original Chinese text plus best-effort English translation   |
| Campaign analysis      | Likes, comments, reposts, authors, and timestamps            |
| Reviewable evidence    | Stable post IDs and public evidence URLs                     |
| Automation-ready data  | One normalized posts-and-comments dataset plus a run summary |

### 🎯 Why use this Weibo scraper?

- **Search and comments share one run.** The Actor keeps the same managed visitor session from discovery through comment pagination.
- **No login fields.** Regional routing, visitor-session setup, challenge handling, retries, and throttling are managed internally.
- **Post and comment rows are explicit.** Use `recordType` to split the unified dataset without guessing.
- **Original text is preserved.** Machine-translated English is additive and never replaces the Chinese source.
- **Evidence stays attached.** Every row includes a public Weibo URL and scrape timestamp.
- **Output limits control spend.** Cap posts per query and comments per post before starting a run.
- **Failures are visible.** The `OUTPUT` record reports request failures instead of silently inventing missing data.

Typical users include China-market researchers, consumer-insight teams, PR and reputation agencies, cross-border brands, investment researchers, academic teams, content strategists, and data engineers.

### 📦 What Weibo data can the Actor extract?

Post rows can include:

- Search query and numeric post ID
- Public post URL and evidence URL
- Original text and optional English translation
- Publication and scrape timestamps
- Author ID, name, profile URL, verification status, verification reason, and public follower count
- Likes, comments, and reposts
- Image URLs, video URL, hashtags, and public source/location label when exposed

Comment rows can include:

- Parent post ID and URL
- Comment ID and parent comment ID for visible replies
- Original text and optional English translation
- Author ID, name, profile URL, verification status, and public follower count
- Likes, publication time, source/location label, evidence URL, and scrape time

Fields can be null when Weibo does not publish them for a particular row.

### 🚀 How to scrape Weibo search results and comments

1. Open the Actor and click **Try for free**.
2. Add one or more search queries. Chinese phrases usually produce the most precise market signal.
3. Choose **Relevance** for research or **Latest** for monitoring.
4. Set the maximum posts per query.
5. Keep comment extraction enabled and set a per-post comment limit, or use zero for posts only.
6. Keep English translation enabled if the destination team does not read Chinese.
7. Click **Start** and open the **Posts and comments** dataset view.

The prefilled input is intentionally small and returns useful data in one run:

```json
{
    "searchQueries": ["新能源汽车"],
    "sortBy": "relevance",
    "maxPostsPerQuery": 5,
    "includeComments": true,
    "maxCommentsPerPost": 5,
    "translateToEnglish": true
}
```

### ⚙️ Input

| Input                | Description                                                            |
| -------------------- | ---------------------------------------------------------------------- |
| `searchQueries`      | Keywords, brand names, products, people, hashtags, or campaign phrases |
| `postIds`            | Optional numeric Weibo post IDs for direct extraction                  |
| `sortBy`             | `relevance` or `latest`                                                |
| `maxPostsPerQuery`   | Maximum public posts returned for each query, from 1 to 200            |
| `includeComments`    | Whether to collect public comments for returned or direct posts        |
| `maxCommentsPerPost` | Comment cap per post, from 0 to 500                                    |
| `translateToEnglish` | Adds best-effort English text while retaining original Chinese         |

API clients may use `queries` or `keywords` as aliases for `searchQueries`, and `maxResults` as an alias for `maxPostsPerQuery`.

For direct comment extraction, copy the numeric ID from a mobile Weibo detail URL such as `https://m.weibo.cn/detail/5326750785470485`.

### 📤 Output

The default dataset contains both record types. Filter `recordType` to `post` or `comment`, or open the dedicated **Comments** view.

Example post:

```json
{
    "recordType": "post",
    "query": "新能源汽车",
    "postId": "5326750785470485",
    "postUrl": "https://m.weibo.cn/detail/5326750785470485",
    "createdAt": "2026-08-01T03:20:41.000Z",
    "text": "新能源汽车市场的新变化",
    "textEnglish": "New changes in the new energy vehicle market",
    "authorId": "1639529981",
    "authorName": "公开作者",
    "authorVerified": true,
    "authorFollowersCount": 1779000,
    "likesCount": 1195,
    "commentsCount": 235,
    "repostsCount": 125,
    "hashtags": ["新能源汽车"],
    "scrapedAt": "2026-08-02T10:15:00.000Z",
    "evidenceUrl": "https://m.weibo.cn/detail/5326750785470485"
}
```

Example comment:

```json
{
    "recordType": "comment",
    "query": "新能源汽车",
    "postId": "5326750785470485",
    "commentId": "5326942993907853",
    "parentCommentId": null,
    "text": "这个变化值得关注",
    "textEnglish": "This change is worth watching",
    "authorName": "公开评论者",
    "likesCount": 4,
    "evidenceUrl": "https://m.weibo.cn/detail/5326750785470485?cid=5326942993907853"
}
```

The `OUTPUT` key-value-store record contains query inputs, post and comment counts, total returned records, failed-request count, bounded error details, and generation time. Export the dataset as JSON, CSV, Excel, HTML, or XML.

### 💵 Pricing

The Actor uses pay-per-event pricing: **$0.01 per successfully returned post or comment ($10 per 1,000 records)**. There is no Actor start fee. Visitor challenges, retries, duplicate rows, failed requests, translations, and the run summary are not charged.

| Returned records |   Cost |
| ---------------: | -----: |
|               25 |  $0.25 |
|              100 |  $1.00 |
|            1,000 | $10.00 |

Use `maxPostsPerQuery`, `maxCommentsPerPost`, and Apify's maximum total charge setting for a strict spending ceiling. The price displayed in Apify Console is authoritative.

### 🧩 Example Tasks

1. [Monitor recent Weibo brand mentions](https://apify.com/webdata_labs/weibo-search-comments-scraper/examples/weibo-brand-mention-monitor)
2. [Collect Weibo product feedback](https://apify.com/webdata_labs/weibo-search-comments-scraper/examples/latest-weibo-product-feedback)
3. [Export comments from a Weibo post](https://apify.com/webdata_labs/weibo-search-comments-scraper/examples/weibo-post-comments-api)
4. [Research competitor campaign conversations](https://apify.com/webdata_labs/weibo-search-comments-scraper/examples/weibo-competitor-campaign-comments)
5. [Build a Weibo market research export](https://apify.com/webdata_labs/weibo-search-comments-scraper/examples/weibo-market-research-export)
6. [Track China consumer conversations](https://apify.com/webdata_labs/weibo-search-comments-scraper/examples/china-consumer-conversation-monitor)
7. [Watch Weibo reputation-risk keywords](https://apify.com/webdata_labs/weibo-search-comments-scraper/examples/weibo-reputation-risk-watch)
8. [Create a posts-only Weibo search feed](https://apify.com/webdata_labs/weibo-search-comments-scraper/examples/weibo-posts-only-search-feed)

Duplicate a Task before adding a schedule, webhook, or destination integration.

### 🔌 Use the Actor through the API

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('webdata_labs/weibo-search-comments-scraper').call({
    searchQueries: ['新能源汽车', '智能驾驶'],
    sortBy: 'latest',
    maxPostsPerQuery: 20,
    maxCommentsPerPost: 20,
    translateToEnglish: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
```

Keep the Apify token in an environment variable or integration secret, never in a prompt or committed file.

### 🤖 Use with AI agents through MCP

```bash
claude mcp add --transport http apify "https://mcp.apify.com?tools=webdata_labs/weibo-search-comments-scraper"
```

Claude Desktop, Cursor, or VS Code configuration:

```json
{
    "mcpServers": {
        "apify": {
            "url": "https://mcp.apify.com?tools=webdata_labs/weibo-search-comments-scraper"
        }
    }
}
```

Example prompt: "Search Weibo for 新能源汽车, collect the latest posts and comments, then summarize recurring product complaints with evidence links."

### 🔁 Use this Actor in n8n

1. Trigger on a schedule.
2. Start the Actor through the Apify node or an HTTP Request node.
3. Wait for the run to finish and read `defaultDatasetId`.
4. Fetch dataset items and split them by `recordType`.
5. Store the snapshot in Sheets, Airtable, Postgres, or a warehouse.
6. Send selected new rows to Slack, email, or an analysis workflow.

Store successive datasets instead of overwriting them when you need mention velocity, persistence, or change detection.

### ⚠️ Limits and data quality

- Weibo changes public endpoints, experiments, and visitor challenges without notice.
- Public search is a ranked sample, not a complete archive or guaranteed firehose.
- Deleted, private, restricted, moderated, or login-only content is outside scope.
- Visible comment ordering and totals can differ from the counter shown on a post.
- Deep reply threads may be collapsed or unavailable on the public mobile surface.
- Author follower counts can be abbreviated by Weibo and are normalized from values such as `177.9万`.
- English text is machine translated and should be reviewed before customer-facing use.
- Location/source labels are platform-provided public strings, not independently verified locations.
- A larger output limit cannot create rows that Weibo does not expose to the current visitor session.

### ⚖️ Is it legal to scrape Weibo?

The Actor extracts publicly accessible post, comment, and profile metadata. It does not request passwords, private messages, private accounts, or user-supplied account cookies. Public availability does not remove legal, contractual, copyright, privacy, database-right, or platform-term obligations.

Use the data for a legitimate purpose, minimize personal data, set appropriate retention periods, and do not use it for harassment, sensitive profiling, surveillance, or regulated decisions. China's PIPL, GDPR, and other laws may apply depending on the people, jurisdiction, and purpose involved. Obtain legal advice for commercial redistribution or high-risk processing.

### ❓ FAQ

#### Do I need a Weibo account or Chinese phone number?

No. The input contains no account credentials or cookie fields. The Actor is limited to public surfaces available to a managed visitor session.

#### Is this an official Weibo API?

No. It is an independent, unofficial data-extraction Actor and is not affiliated with Weibo or Sina.

#### Can it sort by newest posts?

Yes. Choose `latest`. Public search ranking can still include platform-selected results.

#### Can I scrape comments from one known post?

Yes. Put its numeric ID in `postIds`, leave comments enabled, and set the desired comment limit.

#### Why are fewer comments returned than the post counter?

Weibo can collapse replies, moderate rows, require login for deeper pages, or expose only part of a thread publicly.

#### How do I monitor only new mentions?

Schedule latest-first runs and compare `postId` and `commentId` against your own previous datasets. This avoids cross-customer state and makes retention explicit.

#### How do I report a broken run?

Open the Actor's **Issues** tab and include the run URL, sanitized input, and expected result. Never post tokens, private cookies, or personal credentials.

### 🔗 Related Actors

- [Xiaohongshu & Douyin Product Trend Radar](https://apify.com/webdata_labs/xiaohongshu-douyin-trend-radar) for Chinese social-commerce discovery.
- [1688 Product Scraper](https://apify.com/webdata_labs/1688-scraper) for wholesale products, suppliers, MOQ, and price tiers.
- [Google Search Results Scraper](https://apify.com/webdata_labs/google-search-results-scraper) for broader demand and competitor validation.
- [Meta Ads Library Scraper](https://apify.com/webdata_labs/meta-ads-library-scraper) for paid creative and advertiser monitoring.
- [Review Pain Miner API](https://apify.com/webdata_labs/review-pain-miner-api) for structured complaints and opportunity themes from review data.
- [Website Contact Extractor](https://apify.com/webdata_labs/website-contact-extractor) for public company and supplier contact enrichment.

### 📝 Changelog

#### 0.1 - 2026-08-02

- Added public Weibo keyword search with relevance and latest modes.
- Added direct post-ID lookup and paginated public comments.
- Added normalized post/comment rows, authors, engagement, media, hashtags, translations, and evidence URLs.
- Added managed China residential visitor sessions, rendered challenge handling, retries, dataset views, summary output, and eight example Task configurations.

# Actor input Schema

## `searchQueries` (type: `array`):

Chinese or international keywords, brands, products, people, or campaign phrases to search on public Weibo.

## `postIds` (type: `array`):

Optional numeric Weibo post IDs for direct post and comment extraction.

## `sortBy` (type: `string`):

Use relevance for broad research or latest for monitoring recent mentions.

## `maxPostsPerQuery` (type: `integer`):

Caps returned posts for each search query.

## `includeComments` (type: `boolean`):

Return public comments for every collected or direct post.

## `maxCommentsPerPost` (type: `integer`):

Caps public comments returned for each post. Set 0 to return posts only.

## `translateToEnglish` (type: `boolean`):

Add best-effort English text while preserving original Chinese.

## Actor input object example

```json
{
  "searchQueries": [
    "新能源汽车"
  ],
  "postIds": [],
  "sortBy": "relevance",
  "maxPostsPerQuery": 5,
  "includeComments": true,
  "maxCommentsPerPost": 5,
  "translateToEnglish": true
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

## `summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchQueries": [
        "新能源汽车"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("webdata_labs/weibo-search-comments-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "searchQueries": ["新能源汽车"] }

# Run the Actor and wait for it to finish
run = client.actor("webdata_labs/weibo-search-comments-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchQueries": [
    "新能源汽车"
  ]
}' |
apify call webdata_labs/weibo-search-comments-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=webdata_labs/weibo-search-comments-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/sYLrnzsYOd4ftKLrB/builds/Sb8sQ0K0FRrUzX09c/openapi.json
