给 AI

问答

view=compact 和 fields= 是做什么的,会影响价格吗?

简短回答

view 是预设档位:standard(默认)返回通用字段,compact 再去掉所有值为 null 的字段,full 会在 ext 里加上平台特有字段。fields 只保留你点名的路径。两者都不改变价格和条数:在 okdata 上,一页小红书搜索不管要什么形状都是 $0.02。

okdata 的每个接口都接受两个可选参数,只改变返回的形状,不改变抓取的内容:view 和 fields。有了它们,脚本或者 AI 智能体可以只要自己用得上的那几列。思路和 Google 的 YouTube Data API 里的 part、fields 一样,那边叫“部分资源”。

view:三个档位

view 每个对象里有什么 以抖音搜索结果为例
standard(默认) 这类对象的通用字段,null 也保留 有 title: null
compact 在 standard 基础上去掉所有为 null 的字段 没有 title 这一项
full 在 standard 基础上加 ext,即平台特有字段 ext.duration_ms、ext.music、ext.region

小红书笔记搜索的结果加了 full 后多出 ext.ip_location 和 ext.xsec_token;抖音视频搜索多出的是视频时长、背景音乐名和地区。通用字段见对象参考。

fields:只留你点名的

fields=id,title,metrics.likes,author.name 返回的对象里就只有这几个路径,嵌套关系不变,用点号进到对象内部。路径是在 view 之后才筛的,这带来一个实际影响:ext 只在 full 里才有,所以 fields=id,ext.duration_ms 必须同时加 view=full。点了一个什么都匹配不上的路径,调用照样成功,只是响应的 warnings 里会写明,比如 fields matched nothing: ext.duration_ms。

价格和条数

请求 条数 费用
query=露营装备 约 20 条 $0.02
同样的请求加 view=compact 约 20 条 $0.02
同样的请求加 view=full&fields=id,metrics.likes,ext.duration_ms 约 20 条 $0.02

按次计费,瘦的一页和胖的一页价格相同。省下来的是带宽,以及模型读结果时的 token。

示例

import os, requests

URL = "https://api.okdata.online/v1/xiaohongshu/notes/search"
H = {"Authorization": f"Bearer {os.environ['OKDATA_API_KEY']}"}

body = requests.get(URL, headers=H, timeout=60, params={
    "query": "防晒霜 推荐", "sort": "popular",
    "view": "full",
    "fields": "id,title,metrics.likes,metrics.favorites,author.name,ext.ip_location",
}).json()
if body["code"] != "ok":
    raise SystemExit(body["message"])
print(body["warnings"])            # 每个路径都匹配上时为 []
print(body["meta"]["unavailable"]) # 字段为何为 null,例如 metrics.views: platform
for note in body["data"]["items"]:
    print(note)

需要留意的地方

  • **compact 只是把 null 藏起来,不解释原因。**compact 结果里没有 metrics.views,不等于播放量是 0。meta.unavailable 依然会列出哪些字段为 null,以及原因是平台从不公开(platform)还是数据源暂时取不到(capability)。
  • **翻页。**同一个列表翻页时可以换 view 和 fields,游标照样有效。
  • **智能体。**通过 MCP 调用时,这两个参数放在 params 里,比如 {"query": "露营装备", "fields": "id,title,metrics.likes"}。

从省 token 的角度,以及常见任务该选哪些字段,见喂给大模型的社交数据怎么省 token。

资料来源

  1. YouTube Data API:部分资源,part 和 fields 参数developers.google.com · 读取于

这个问题出现过的地方(读取于 2026-11-12)

更新于

接上一次,以后直接问 AI。

新 key 自带 $0.10 试用额度。贴一句话,就能接进你的智能体。

免费开始
一句话接进你的 AI

把这句话发给你的智能体

读一下 https://okdata.online/zh/agents.md,帮我把 okdata 配好;我的 key 在环境变量 OKDATA_API_KEY 里。

Claude Code、Cursor、Codex 等能打开网址的智能体,读完会自己配好。

MCP 地址https://api.okdata.online/mcp