YouTube 字幕
YouTube 是一个由谷歌创建的在线视频分享和社交媒体平台。
本笔记本介绍了如何从YouTube transcripts
加载文档。
from langchain_community.document_loaders import YoutubeLoader
API Reference: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()
添加语言偏好
语言参数:它是一个按优先级降序排列的语言代码列表,默认为en
。
translation param : 这是一个翻译偏好设置,您可以将可用的转录内容翻译成您偏好的语言。
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_format
参数: langchain_community.document_loaders.youtube.TranscriptFormat
值之一。在这种情况下,TranscriptFormat.CHUNKS
。
chunk_size_seconds
参数: 一个整数,表示每个转录数据块所代表的视频秒数。默认值为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 Reference: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 Docs数据的说明
默认情况下,GoogleDriveLoader
期望 credentials.json
文件位于 ~/.credentials/credentials.json
,但可以使用 credentials_file
关键字参数进行配置。token.json
也是如此。请注意,token.json
将在您第一次使用加载器时自动创建。
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 Reference:GoogleApiClient | GoogleApiYoutubeLoader