下载器
通过视频 ID 下载 YouTube 音频和视频内容,视频质量最高可配置到 8K,并直接传送到你的云存储。
该 youtube_download 该 source 提供您所选 YouTube 视频的音频/视频内容。请注意,由于数据量可能较大,此 source 仅可通过异步 Push-Pull 集成 以及 云存储 功能。
YouTube Downloader 的工作原理
通过 API 提交:
一个或多个 YouTube 视频 ID;
云存储详情。
获取 API 响应,其中确认您的视频下载请求已成功接受。
视频在我们的系统处理完成后,会立即上传到指定的云存储位置。
注意:
下载器默认使用 720p 视频分辨率。如果 720p 不可用,下载器会选择低于 720p 的最佳可用画质。您可以使用以下内容覆盖此行为:
context: video_quality参数一起使用时才有用。您可以下载时长最长为 12 小时的视频。
下载时间限制为 1 小时。
输入参数值
source
设置爬虫。使用 youtube_download.
–
查询
YouTube 视频 ID。
–
storage_type
云服务的存储类型(gcs, s3 或 s3_compatible)
–
storage_url
您希望结果上传到的云存储位置的存储桶名称(用于 AWS S3)或 URL(用于其他兼容 S3 的存储)。
–
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
指定要下载的音轨。可接受 default 或 original (视频的原始音轨)。
default
– 必填参数
提交单个任务
端点
输入
请按下方示例在 JSON 负载中提供任务参数:
批量任务
您可以在单个批量请求中提交最多 5,000 个视频 ID。
端点
重要: 使用 /batch 在 /batch 端点,您只能提交以下内容的列表: 查询参数值。其他所有参数应使用单个值。
输入
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格式。
end_at 时间戳值必须晚于 start_at。仅支持 hh:mm:ss 格式。
如果 start_at 或 end_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
任意 s3 或 gcs 存储桶名称;
任意 兼容 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_ID 和 ACCESS_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
需要登录。
最后更新于
这有帮助吗?

