For the complete documentation index, see llms.txt. This page is also available as Markdown.

下载器

通过视频 ID 下载 YouTube 音频和视频内容,视频质量最高可配置到 8K,并直接传送到你的云存储。

youtube_download 该 source 提供您所选 YouTube 视频的音频/视频内容。请注意,由于数据量可能较大,此 source 仅可通过异步 Push-Pull 集成 以及 云存储 功能。

YouTube Downloader 的工作原理

  1. 通过 API 提交:

    • 一个或多个 YouTube 视频 ID;

    • 云存储详情。

  2. 获取 API 响应,其中确认您的视频下载请求已成功接受。

  3. 视频在我们的系统处理完成后,会立即上传到指定的云存储位置。

输入参数值

参数
描述
默认值

source

设置爬虫。使用 youtube_download.

查询

YouTube 视频 ID。

storage_type

云服务的存储类型(gcs, s3s3_compatible)

storage_url

您希望结果上传到的云存储位置的存储桶名称(用于 AWS S3)或 URL(用于其他兼容 S3 的存储)。

callback_url

您的回调端点 URL。 更多信息

context: download_type

指定是否下载 audio, video,或两者都下载 - audio_video.

audio_video

context: video_quality

设置视频画质: best, worst,或指定分辨率: 144, 360, 480, 720, 1080, 1440, 2160(4K), 4320(8K)。

720

context: audio_language

指定要下载的音轨。可接受 defaultoriginal (视频的原始音轨)。

default

context: start_at

部分视频下载(剪辑)的起始时间戳,格式为 hh:mm:ss 格式。 了解更多.

context: end_at

部分视频下载(剪辑)的结束时间戳,格式为 hh:mm:ss 格式。必须晚于 start_at. 了解更多.

– 必填参数

提交单个任务

端点

输入

请按下方示例在 JSON 负载中提供任务参数:

批量任务

您可以在单个批量请求中提交最多 5,000 个视频 ID。

端点

输入

API 将返回一个 JSON 对象,其中包含每个已创建任务的任务信息。任务状态将为 pending 直至下载完成。

检查任务状态

如果您提供了有效的 回调 URL 在提交任务时,我们会在完成后通过发送 JSON 负载到指定的回调 URL 来通知您。

不过,如果您提交任务时未使用 回调服务,您可以手动检查任务状态。请从响应中的 href 字段中获取 rel:self 任务提交后收到的响应消息部分获取。用于检查任务状态的 URL 将类似于以下内容: http://data.oxylabs.io/v1/queries/12345678900987654321. 查询此 URL 将返回任务信息,包括其当前 status.

端点

部分下载(裁剪)

若要下载特定片段或剪辑,而不是完整视频,请在您的 context 数组中添加 2 个额外参数:

  • start_at — 裁剪片段的起始时间戳,格式为 hh:mm:ss 格式。

  • end_at — 裁剪片段的结束时间戳,格式为 hh:mm:ss 格式。

如果省略这两个参数,请求将按标准完整视频下载处理。

如果 start_atend_at 未通过验证,则会返回 HTTP 400 错误,并带有 message 字段。

条件
错误信息

start_at 不在 hh:mm:ss 格式中

context 中的 start_at 值无效。支持的格式:hh:mm:ss。

end_at 不在 hh:mm:ss 格式中

context 中的 end_at 值无效。支持的格式:hh:mm:ss。

end_at 不晚于 start_at

context 中的 end_at 值无效。必须晚于 start_at。

云存储

您可以将 YouTube 视频交付到 Google Cloud Storage, Amazon S3, Alibaba Cloud OSS,或 其他兼容 S3 的云存储.

内容文件将出现在您的云存储位置,并将按以下命名方案之一命名:

  • {video_id}_{job_id}.mp4 — 用于视频

  • {video_id}_{job_id}.m4a — 用于音频

存储参数

参数
描述
有效值

storage_type

您的云存储类型。

gcs (Google Cloud Storage);

s3 (AWS S3); s3_compatible (其他兼容 S3 的存储方案)。

storage_url

您的云存储 URL

任意 s3gcs 存储桶名称;

任意 兼容 S3 的 存储 URL。

Google Cloud Storage 设置

要将任务结果上传到您的 Google Cloud Storage 存储桶,请 为我们的服务设置特殊权限 ,如我们的 Google Cloud Storage documentation.

Amazon S3 设置

要将任务结果上传到您的 Amazon S3 存储桶,请为我们的服务设置访问权限。为此,请转到 https://s3.console.aws.amazon.com/S3存储存储桶名称 ``(如果你没有,请创建一个新的)权限存储桶策略。您可以在我们的 Amazon S3 cloud documentation.

请使用下面的存储桶策略(别忘了将下方的存储桶名称替换为 YOUR_BUCKET_NAME):

此策略允许我们向您的存储桶写入、让您访问已上传的文件,并识别存储桶位置。

Alibaba Cloud OSS 设置

要将结果保存到您的 Alibaba Cloud Object Storage Service (OSS),您必须创建 ACCESS_KEY_IDACCESS_KEY_SECRET 并使用它们来构建存储 URL。请按照我们的 Alibaba Cloud OSS documentation .

兼容 S3 的存储设置

如果您希望将结果交付到 其他兼容 S3 的存储 位置,您需要包含存储桶的 ACCESS_KEY:SECRET 认证字符串到 storage_url 负载中的值中:

错误代码

代码
状态
描述

11201

VIDEO_DELETED

视频已删除。

11202

VIDEO_UNAVAILABLE

视频不可用。

11203

VIDEO_PRIVATE

视频已由上传者设为私有,只有上传者和被明确邀请的人可以查看。

11204

VIDEO_GEO_RESTRICTED

视频受地区限制。

11205

VIDEO_LIVE

视频正在直播。

11206

VIDEO_AGE_RESTRICTED

视频有年龄限制。

11207

VIDEO_MEMBER_ONLY

视频仅限频道会员观看,观看者需要支付每月订阅费。

11208

VIDEO_PREMIUM_ONLY

视频需要 YouTube Premium 订阅。

11209

VIDEO_LIVE_OR_TOO_LONG

视频正在直播,或时长过长,无法下载。

11210

VIDEO_TOO_LONG

视频过长,无法下载。

11211

VIDEO_SIGN_IN_REQUIRED

需要登录。

最后更新于

这有帮助吗?