# 微博数据 API | Weibo hot search comments post search (`socialdatax/socialdatax-weibo-data-api`) Actor

社媒数据助手 SocialDataX 提供的只读微博 / Weibo data API，支持微博热搜 / Weibo hot search、微博搜索 / Weibo search、帖子详情 / post details、评论导出 / comments export、评论回复 / comment replies、点赞用户 / post likers、转发列表 / reposts、用户资料 / user profiles 和用户微博列表 / user posts。

- **URL**: https://apify.com/socialdatax/socialdatax-weibo-data-api.md
- **Developed by:** [SocialDataX](https://apify.com/socialdatax) (community)
- **Categories:** Social media, Developer tools, Automation
- **Stats:** 4 total users, 2 monthly users, 94.2% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.99 / 1,000 dataset items

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## 微博数据 API | Weibo hot search comments post search

这是社媒数据助手 SocialDataX 的 Apify Actor 适配层，提供只读微博 / Weibo data API。常见用法包括微博搜索 / Weibo search、微博热搜 / Weibo hot search、微博评论导出 / Weibo comments export、微博用户资料 / Weibo user profile 和微博用户帖子列表 / Weibo user posts。

Apify 用户无需配置 SocialDataX API Key；直接通过 Apify Console、Apify API、Dataset export 或自动化工作流运行即可。

支持能力：

- 热搜 / hot list
- 帖子搜索 / post search
- 帖子详情 / post details
- 评论列表 / comments
- 评论回复 / comment replies
- 点赞用户 / post likers
- 转发列表 / reposts
- 用户资料 / user profiles
- 用户微博列表 / user posts

This Actor is a read-only, unofficial data API integration. It is not affiliated with Weibo.

### Support / 联系我们

如果 run 失败、需要更高用量，或想接入批量数据工作流，请通过 SocialDataX support 联系我们：

- Website: <https://socialdatax.com/>

If a run fails, you need higher limits, or you want to discuss a bulk data workflow, contact SocialDataX support:

- Website: <https://socialdatax.com/>

### 选择字段

先选择 `operation`，再填写该 operation 需要的字段。Apify 表单里其它字段可以留空；即使误填了无关字段，Actor 也会忽略。

| Operation | 必填字段 | 可选字段 | 说明 |
| --- | --- | --- | --- |
| `search_posts` | `keyword` | `page_token`, `max_items`, `auto_paginate` | 按关键词搜索微博帖子，默认会自动翻页直到达到 `max_items`。 |
| `search_hot_list` | 无 | `max_items` | 微博热搜榜，请求一次并按 `max_items` 限制写入 Dataset。 |
| `get_post_detail` | `post_id` 或 `post_url` 至少填一个 | 无 | 获取单条微博帖子详情；两者都填时优先使用 `post_url`。 |
| `get_post_comments` | `post_id` 或 `post_url` 至少填一个 | `page_token`, `sort_type`, `max_items`, `auto_paginate` | 获取一级评论列表；两者都填时优先使用 `post_url`。 |
| `get_post_comment_replies` | `post_id`, `comment_id` | `page_token`, `max_items`, `auto_paginate` | 获取某条一级评论下的回复。先运行 `get_post_comments`，从 Dataset 的 `post_id` 和 `comment_id` 字段复制真实 ID。 |
| `list_post_likers` | `post_id` 或 `post_url` 至少填一个 | `page_token`, `max_items`, `auto_paginate` | 获取点赞用户列表；两者都填时优先使用 `post_url`。 |
| `list_post_reposts` | `post_id` 或 `post_url` 至少填一个 | `page_token`, `max_items`, `auto_paginate` | 获取转发列表；两者都填时优先使用 `post_url`。 |
| `get_user_info` | `user_id` 或 `profile_url` 至少填一个 | 无 | 获取用户资料；两者都填时优先使用 `profile_url`。 |
| `list_user_posts` | `user_id` 或 `profile_url` 至少填一个 | `page_token`, `max_items`, `auto_paginate` | 获取用户微博列表；两者都填时优先使用 `profile_url`。 |

### 字段填写建议 / Input tips

- `keyword`: 仅用于 `search_posts`。默认示例是 `露营`。
- `post_url`: 推荐直接粘贴微博帖子链接或分享文案，适用于 `get_post_detail`、`get_post_comments`、`list_post_likers` 和 `list_post_reposts`。
- `post_id`: 只填真实帖子 ID。`get_post_comment_replies` 必须使用 Dataset 行里的真实 `post_id`，不要粘贴帖子链接或分享文案。
- `comment_id`: 只填 `get_post_comments` Dataset row 里的 `comment_id`。建议选择 `reply_count > 0` 或 `has_replies = true` 的一级评论行。
- `profile_url`: 推荐直接粘贴微博主页链接或分享文案，适用于 `get_user_info` 和 `list_user_posts`。
- `user_id`: 只填真实 `user_id` / `author_user_id`。不要填昵称、主页名称或微博号；如果只有主页链接或分享文案，请填 `profile_url`。
- `sort_type`: 仅用于 `get_post_comments`。`hot` 表示热门评论，`time_descending` 表示当前可返回范围内最新评论优先。

如果用户把帖子链接填到用户类 operation、把主页链接填到帖子类 operation，或在评论回复里粘贴帖子链接/分享文案，Actor 会跳过 SocialDataX API 请求并在 `OUTPUT` 写入中英文 warning 和支持链接，避免因为明显可修正的输入问题直接失败。

点赞用户和转发列表支持 `post_url`。使用帖子链接时耗时可能略长；继续翻页请保持同一 `post_url`，并传入上一页返回的完整分页令牌。

### 输入示例

帖子搜索：

```json
{
  "operation": "search_posts",
  "keyword": "露营",
  "page_token": "",
  "max_items": 20,
  "auto_paginate": true
}
```

热搜：

```json
{
  "operation": "search_hot_list",
  "max_items": 20
}
```

帖子详情：

```json
{
  "operation": "get_post_detail",
  "post_url": "https://weibo.com/1682207150/R1tllDJRy"
}
```

评论列表：

```json
{
  "operation": "get_post_comments",
  "post_url": "https://weibo.com/1682207150/R1tllDJRy",
  "page_token": "",
  "sort_type": "hot",
  "max_items": 20,
  "auto_paginate": true
}
```

评论回复：

```json
{
  "operation": "get_post_comment_replies",
  "post_id": "5303511279471092",
  "comment_id": "4611693340001972",
  "page_token": "",
  "max_items": 20,
  "auto_paginate": true
}
```

点赞用户：

```json
{
  "operation": "list_post_likers",
  "post_url": "https://weibo.com/1682207150/R1tllDJRy",
  "page_token": "",
  "max_items": 20,
  "auto_paginate": true
}
```

转发列表：

```json
{
  "operation": "list_post_reposts",
  "post_url": "https://weibo.com/1682207150/R1tllDJRy",
  "page_token": "",
  "max_items": 20,
  "auto_paginate": true
}
```

用户资料：

```json
{
  "operation": "get_user_info",
  "profile_url": "https://weibo.com/u/1682207150"
}
```

用户微博列表：

```json
{
  "operation": "list_user_posts",
  "profile_url": "https://weibo.com/u/1682207150",
  "page_token": "",
  "max_items": 20,
  "auto_paginate": true
}
```

`max_items` 默认 `50`，最大 `1000`。`auto_paginate=false` 时只请求当前 `page_token`。热搜不需要分页参数，Actor 会请求一次，并按 `max_items` 限制写入 Dataset 的热搜条目数。

如果用户在 Apify run options 里设置了更低的 paid Dataset item 上限，Actor 会把列表类 `max_items` 自动裁剪到该上限，避免超预算请求过多页面。
如果该上限为 `0`，Actor 会直接结束并在 `OUTPUT` 写入 warning，不会请求 SocialDataX API。

### Apify 计划要求

持续使用需要 Apify paid plan。Apify free plan 用户有 5 次 SocialDataX API request 试用额度；每次请求一个接口页面计 1 次，`auto_paginate=true` 时每翻一页都会计入一次。试用额度用完后，请升级 Apify 计划继续使用。

Ongoing use requires an Apify paid plan. Free-plan users get a 5-request SocialDataX API trial. Each requested page counts as one request, so `auto_paginate=true` can consume multiple requests in one run.

### 输出

Actor 会把结果写入 Apify Dataset，适合 JSON、CSV、Excel / XLSX、JSONL 等格式导出。

列表类接口会为 `items[]` 中的每个元素写入一条扁平 dataset row：

```json
{
  "operation": "get_post_comments",
  "item_index": 1,
  "query_post_id": "5303511279471092",
  "query_page_token": "",
  "query_sort_type": "hot",
  "query_max_items": 20,
  "query_auto_paginate": true,
  "post_id": "5303511279471092",
  "comment_id": "4611693340001972",
  "content": "这场比赛太精彩了。",
  "reply_count": 2,
  "like_count": 9,
  "author_user_id": "20001",
  "author_name": "评论作者",
  "page_request_index": 1,
  "page_item_count": 20,
  "page_next_page_token": "next-token",
  "page_has_more": true
}
```

详情类接口会写入一条 dataset row。`author`、`user`、`video` 等常见对象会展开为 `author_*`、`user_*`、`video_*` 字段；图片、话题和数组字段保留 JSON 值。

如果某一页 `items` 为空但仍有分页信息，Actor 会写入一条 `empty_page=true` 的 summary row，避免丢失 `next_page_token`。如果空页已经没有下一页，则不会写入 Dataset row。

如果 run 失败，`OUTPUT` 会保留一条轻量失败摘要，方便在 Apify 控制台里直接看到请求次数、状态码和简要错误信息。

### Apify API 调用

同步运行并直接获取 Dataset items：

```bash
curl -X POST "https://api.apify.com/v2/acts/socialdatax~socialdatax-weibo-data-api/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "operation": "search_posts",
    "keyword": "露营",
    "page_token": "",
    "max_items": 20,
    "auto_paginate": true
  }'
```

Python client 示例：

```python
from apify_client import ApifyClient

client = ApifyClient("<APIFY_TOKEN>")
run = client.actor("socialdatax/socialdatax-weibo-data-api").call(run_input={
    "operation": "search_posts",
    "keyword": "露营",
    "page_token": "",
    "max_items": 20,
    "auto_paginate": True,
})
items = client.dataset(run["defaultDatasetId"]).list_items().items
```

### 费用

Apify 用户按 Actor 页面展示的 Apify 价格和用量计费，不需要购买或配置 SocialDataX API Key。

# Actor input Schema

## `operation` (type: `string`):

先选择要调用的微博 / Weibo 数据能力，然后只填写该 operation 需要的字段；无关字段会被忽略。持续使用需要 Apify paid plan；free plan 用户有 5 次 SocialDataX API request 试用额度。Choose the operation first, then fill only the fields used by that operation.

## `keyword` (type: `string`):

仅 operation=search\_posts 时必填；其它 operation 可留空。

## `post_id` (type: `string`):

operation=get\_post\_detail、get\_post\_comments、get\_post\_comment\_replies、list\_post\_likers、list\_post\_reposts 时使用；如果只有微博帖子链接，请直接填 post\_url。详情、评论、点赞用户、转发列表至少提供 post\_id 或 post\_url 之一，同时提供时优先使用 post\_url。评论回复必须使用 Dataset 行里的真实 post\_id。

## `post_url` (type: `string`):

operation=get\_post\_detail、get\_post\_comments、list\_post\_likers、list\_post\_reposts 时至少提供 post\_url 或 post\_id 之一；同时提供时优先使用 post\_url。推荐直接粘贴微博帖子链接。使用 post\_url 读取点赞用户或转发列表时耗时可能略长；继续翻页请保持同一 post\_url 并传入上一页返回的完整分页令牌。评论回复不使用 post\_url；请先运行详情或评论，再复制 Dataset 行里的真实 post\_id。

## `comment_id` (type: `string`):

仅 operation=get\_post\_comment\_replies 时必填。先运行 get\_post\_comments，在 Dataset 里找到 reply\_count > 0 或 has\_replies = true 的一级评论行，复制该行的 comment\_id；不要填评论内容、昵称或其它文本。

## `sort_type` (type: `string`):

仅 operation=get\_post\_comments 时使用。hot=热门评论，time\_descending=当前可返回范围内最新评论优先。

## `user_id` (type: `string`):

operation=get\_user\_info、list\_user\_posts 时至少提供 user\_id 或 profile\_url 之一；同时提供时优先使用 profile\_url。只填真实 user\_id，不要填昵称、主页名称或微博号；如果只有主页链接，请直接填 profile\_url。

## `profile_url` (type: `string`):

operation=get\_user\_info、list\_user\_posts 时至少提供 profile\_url 或 user\_id 之一；同时提供时优先使用 profile\_url。推荐直接粘贴微博主页链接。

## `page_token` (type: `string`):

搜索、评论、评论回复、点赞用户、转发列表、用户微博列表继续翻页时传入上一页返回的完整 next\_page\_token；第一页留空。auto\_paginate=true 时通常不用手动填写。

## `max_items` (type: `integer`):

最多写入多少条 Dataset item。对搜索、评论、评论回复、点赞用户、转发列表、用户微博列表用于限制自动翻页结果；对热搜用于限制本次导出的热搜条目数。较大的值可能触发多次 SocialDataX API request。

## `auto_paginate` (type: `boolean`):

开启后 Actor 会按 next\_page\_token 继续请求，直到达到 max\_items 或没有下一页。关闭时只请求当前 page\_token。每翻一页计 1 次 SocialDataX API request。When enabled, each page request counts as one SocialDataX API request.

## Actor input object example

```json
{
  "operation": "search_posts",
  "keyword": "露营",
  "sort_type": "hot",
  "max_items": 50,
  "auto_paginate": true
}
```

# Actor output Schema

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

Open flat result rows written to the default Apify Dataset. Export as JSON, CSV, Excel / XLSX, or JSONL.

## `keyValueStore` (type: `string`):

Open the default key-value store. The OUTPUT record contains operation, item count, request count, page-level response summaries, non-fatal warnings, and lightweight failure details when a run fails.

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("socialdatax/socialdatax-weibo-data-api").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("socialdatax/socialdatax-weibo-data-api").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 '{}' |
apify call socialdatax/socialdatax-weibo-data-api --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/2LERepIog9VIQCmN6/builds/mWQgf4rsLQxkEVarD/openapi.json
