---
document_id: agent.collection.task.weibo_search_posts_v1
schema_version: 2
parent_document_id: agent.querying
section: querying
---

<!-- Generated by scripts.build_agent_guide; do not edit. -->

# Search posts / 搜索帖子

Search Weibo posts by keyword. For one post's details use weibo_status_detail_v1; for its comments use weibo_status_comments_v1.

按关键词搜索微博帖子。要取某条微博的详情用 weibo_status_detail_v1，要取评论用 weibo_status_comments_v1。

Task / 任务: `weibo_search_posts_v1`
Platform / 平台: Weibo / 微博
Billing / 计费: 3 Credits per successful task / 每个成功任务 3 Credits
Estimate / 估价: call `estimate_collection`; start directly when `approval_required=false`, otherwise obtain approval for `upper_bound_credits`.
估价：调用 `estimate_collection`；`approval_required=false` 时直接启动，否则请用户确认 `upper_bound_credits`。

## Limitations / 限制

- 按页翻页，首次传 page=1，后续递增 page；最多 50 页。
- pagination_known=false 表示是否有下一页未知，has_more=false 此时不代表已取完；可手动递增 page，每次成功请求单独计费。第 50 页为公开上限。
- author_id 仅返回数字 UID，无法识别时为空；author_name 是显示名称。
- 只返回帖子卡片，不返回账号、视频或商品推荐卡片。
- search_type、include_type 和 timescope 只能使用任务契约中的值。

## Inputs / 输入

- `source` — Search source / 搜索来源; kind=text; required=True; default='weibo'; bounds=min_length=2, max_length=64
- `search_mode` — Search mode / 搜索模式; kind=select; required=True; default='text'; allowed=text
- `query` — Query / 搜索词; kind=text; required=False; default=None; bounds=min_length=1, max_length=100
- `filters` — Filters / 筛选条件; kind=object; required=False; default={}
- `page` — Page / 页码; kind=integer; required=False; default=1; bounds=min=1, max=50
- `page_size` — Page size / 每页条数; kind=integer; required=False; default=None; bounds=min=1, max=50
- `page_token` — Page token / 续页令牌; kind=cursor; required=False; default=''; bounds=max_length=8192
- `filters.content_type` — content_type / content_type; kind=text; required=False; default=''; allowed=all, image, link, music, video
- `filters.search_type` — search_type / search_type; kind=text; required=False; default=''; allowed=all, hot, media, original, verified, viewpoint
- `filters.time_range` — time_range / time_range; kind=text; required=False; default=''; allowed=all, day, month, week

## Minimal call / 最小调用

`estimate_collection`

```json
{
  "task_query": "搜索微博上关于扫地机器人的帖子",
  "task_code": "weibo_search_posts_v1",
  "input": {
    "source": "weibo",
    "search_mode": "text",
    "query": "扫地机器人",
    "page": 1,
    "page_token": ""
  }
}
```


## Result and pagination / 结果与分页

- mode=page
- current page: `data.page`; page bound: `data.next_page`; next page: `data.next_page` → `page` (null means stop). / 下一页使用 `data.next_page`，为 null 时结束；总页数未知不代表没有下一页。

Only the fields listed below are part of the stable result contract. /
只有下方列出的字段属于稳定结果契约。

## Result fields / 结果字段

- `meta.request_id` — type=string; Asklear request identifier for tracing. / 用于追踪的 Asklear 请求 ID。
- `meta.api_name` — type=string; Executed collection operation name. / 实际执行的采集操作名称。
- `meta.latency_ms` — type=integer; Collection execution latency in milliseconds. / 采集执行耗时（毫秒）。
- `meta.credits_charged` — type=integer; Asklear user-side Credits settled for this task after completion. / 任务完成后 Asklear 用户侧实际结算的 Credits。
- `data.items` — type=array<object>; Weibo posts returned by this page. / 本页返回的微博帖子。
- `data.item_count` — type=integer; Number of posts in this page. / 本页帖子数。
- `data.page` — type=integer|null; Current result page when supplied. / 当前结果页（如响应提供）。
- `data.has_more` — type=boolean; Whether another page is available with a safe page number. / 是否还有可用安全页码的下一页。
- `data.next_page` — type=integer|null; Next page number to pass back to this task when has_more is true. / has_more 为 true 时传回本任务的下一页页码。
- `data.items[].status_id` — type=string; Weibo post identifier. / 微博帖子 ID。
- `data.items[].text` — type=string; Post text. / 帖子正文。
- `data.items[].published_at` — type=integer|null; Publication time as Unix seconds. / 以 Unix 秒表示的发布时间。
- `data.items[].published_at_text` — type=string|null; Original publication-time text when supplied, including relative text. / 上游提供的原始发布时间文本，例如“6分钟前”。
- `data.items[].repost_count` — type=integer|null; Repost count. / 转发数。
- `data.items[].comment_count` — type=integer|null; Comment count. / 评论数。
- `data.items[].like_count` — type=integer|null; Like count. / 点赞数。
- `data.items[].author_id` — type=string|null; Author identifier. / 作者 ID。
- `data.items[].author_name` — type=string|null; Author display name. / 作者名称。

Use `list_collection_tasks` as the runtime authority, then `describe_collection_task` for one task's full input contract, examples and limits. Collection access is entitlement-gated. /
以 `list_collection_tasks` 返回为运行时准据，再用 `describe_collection_task` 取单个任务的完整入参契约、示例与限制；采集能力受 entitlement 控制。
