YouTube 视频搜索

用 YouTube 搜索 API 检索视频

通过 HTTP 检索 YouTube,每条结果直接带上频道名和视频时长,不需要开 Google Cloud 项目,也不用管日配额。

接口
POST https://api.search1api.com/search
YouTube 搜索结果包含什么

结果的 JSON 结构与其他引擎一致,现有的解析逻辑不需要改动。

1
视频标题与链接

链接指向 youtube.com 的播放页。

2
频道与时长

摘要以频道名和视频时长开头。

3
视频简介

摘要的其余部分是视频描述。

适用于

教程检索 / 媒体监控 / 内容调研

不用配额就能拿到时长和频道

把 `search_service` 设为 `youtube`,结果就来自 YouTube 视频。接口地址、鉴权方式和响应结构与其他引擎完全一致,整个过程不涉及 Google Cloud 项目。

摘要里直接带时长

`snippet` 字段的格式为「频道 | 时长 | 描述」,时长是 `12:30` 这种可读形式,抓取之前就能分辨是长教程还是短片段。

频道作为可信度信号

频道名跟着结果一起返回,一个视频值不值得看,往往就是由它决定的。

不需要为日配额做预算

请求按 Search1API 积分计费,而不是消耗 YouTube Data API 的配额单位,不用围着日配额设计工作流。

标准 Search 参数

`max_results` 最大 50,以及 `include_sites`、`exclude_sites`、`time_range`。

什么是 YouTube 搜索 API?

YouTube 搜索 API 是一种 HTTP 接口,把 YouTube 视频以结构化结果返回。Google 提供了 YouTube Data API,但需要开 Cloud 项目、申请 API key,而且搜索调用消耗的日配额远高于普通读取,用起来要仔细算账。Search1API 把 YouTube 作为 Search 接口的一个搜索服务提供,返回视频标题、播放链接,以及带频道、时长和简介的摘要,JSON 结构与其他引擎一致。对于"给用户指一个教程"或"看看这个话题有没有视频"这类 agent 需求,这通常就是全部所需。

接入路径

典型流程

通过 HTTP 检索 YouTube,每条结果直接带上频道名和视频时长,不需要开 Google Cloud 项目,也不用管日配额。

1

把 `search_service` 设为 `youtube` 后发送查询。

2

按竖线切分 `snippet`,分离出频道、时长和描述。

3

当流程需要播放页而不只是列表项时,设置 `crawl_results`。

一次请求,带频道和时长的视频

一次调用即可检索 YouTube,每条结果带上频道和时长,多数情况下一个都不用打开就能给候选排序。

bash
curl -X POST https://api.search1api.com/search \
-H "Authorization: Bearer $SEARCH1API_KEY" \
-H "Content-Type: application/json" \
-d '{
"query": "rust tutorial",
"search_service": "youtube",
"max_results": 5
}'

适合场景

推荐教程时需要用时长判断是否合适的助手。

追踪品牌或话题视频曝光的媒体监控。

调查某个主题是怎么被讲解的内容调研。

按话题查询自动组歌单的内容策划工具。

常见问题

需要 YouTube Data API key 吗?

不需要。鉴权用的是 Search1API 的 key。请求是向 https://api.search1api.com/search 发 POST,把 `search_service` 设为 `youtube`。

和 YouTube Data API 有什么区别?

YouTube Data API 需要 Google Cloud 项目,且搜索调用会大量消耗日配额。Search1API 从自己的余额里按每次搜索 1 积分计费。代价是这里返回的是搜索结果,不覆盖字幕、分析数据、频道管理等 Data API 的完整能力。

返回结果里有视频时长吗?

有。时长是摘要的第二个字段,格式为 `M:SS` 或 `H:MM:SS`,不用转换就能直接读。

YouTube 搜索的费用是多少?

每次搜索消耗 1 积分,通过 `crawl_results` 每成功抓取一个页面追加 1 积分。按 $1 = 1,000 积分的充值基础价计算,1,000 次搜索为 $1。注册即送 100 个免费积分,无需信用卡。

可以拿到视频字幕吗?

搜索结果本身不含字幕。设置 `crawl_results` 会抓取播放页并以 markdown 返回页面文本,但字幕提取不在这个接口的能力范围内。

还支持哪些视频来源?

同一个 Search 接口还支持中文视频的 `bilibili`。加上 `reddit`、`x`、`github`、通用网页引擎和其他中文引擎,一套契约共 17 个引擎。