YouTube 转录
YouTube 是由 Google 创建的在线视频共享和社交媒体平台。
此笔记本介绍如何从YouTube transcripts.
from langchain_community.document_loaders import YoutubeLoader
API 参考:YoutubeLoader
%pip install --upgrade --quiet youtube-transcript-api
loader = YoutubeLoader.from_youtube_url(
"https://www.youtube.com/watch?v=QsYGlZkevEg", add_video_info=False
)
loader.load()
添加视频信息
%pip install --upgrade --quiet pytube
loader = YoutubeLoader.from_youtube_url(
"https://www.youtube.com/watch?v=QsYGlZkevEg", add_video_info=True
)
loader.load()
添加语言首选项
Language param : 是优先级降序排列的语言代码列表,en默认情况下。
翻译参数 :这是一个翻译偏好,您可以将可用的成绩单翻译成您的首选语言。
loader = YoutubeLoader.from_youtube_url(
"https://www.youtube.com/watch?v=QsYGlZkevEg",
add_video_info=True,
language=["en", "id"],
translation="en",
)
loader.load()
将转录文本作为带时间戳的块获取
获取一个或多个Document对象,每个对象都包含一个视频脚本块。可以指定块的长度(以秒为单位)。每个区块的元数据都包含 YouTube 上视频的 URL,该 URL 将在特定区块的开头开始视频。
transcript_formatparam:其中一个langchain_community.document_loaders.youtube.TranscriptFormat值。在这种情况下,TranscriptFormat.CHUNKS.
chunk_size_secondsparam:每个转录数据块表示的视频秒数的整数。默认值为 120 秒。
from langchain_community.document_loaders.youtube import TranscriptFormat
loader = YoutubeLoader.from_youtube_url(
"https://www.youtube.com/watch?v=TKCMw0utiak",
add_video_info=True,
transcript_format=TranscriptFormat.CHUNKS,
chunk_size_seconds=30,
)
print("\n\n".join(map(repr, loader.load())))
API 参考:TranscriptFormat
来自 Google Cloud 的 YouTube 加载器
先决条件
- 创建 Google Cloud 项目或使用现有项目
- 启用 Youtube API
- 为桌面应用程序授权凭据
pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib youtube-transcript-api
🧑 有关提取 Google 文档数据的说明
默认情况下,GoogleDriveLoader期望credentials.json文件~/.credentials/credentials.json,但这可以使用credentials_filekeyword 参数。同样token.json.请注意,token.json将在您第一次使用 loader 时自动创建。
GoogleApiYoutubeLoader可以从 Google Docs 文档 ID 列表或文件夹 ID 加载。您可以从 URL 获取文件夹和文档 ID:
请注意,根据您的设置,service_account_path需要设置。有关更多详细信息,请参阅此处。
# Init the GoogleApiClient
from pathlib import Path
from langchain_community.document_loaders import GoogleApiClient, GoogleApiYoutubeLoader
google_api_client = GoogleApiClient(credentials_path=Path("your_path_creds.json"))
# Use a Channel
youtube_loader_channel = GoogleApiYoutubeLoader(
google_api_client=google_api_client,
channel_name="Reducible",
captions_language="en",
)
# Use Youtube Ids
youtube_loader_ids = GoogleApiYoutubeLoader(
google_api_client=google_api_client, video_ids=["TrdevFK_am4"], add_video_info=True
)
# returns a list of Documents
youtube_loader_channel.load()
API 参考:GoogleApiClient | GoogleApiYoutubeLoader