使用Python进行YouTube视频摘要2025年1月4日 | 阅读 4 分钟 引言我想知道你是否也一样,但每当我空闲时,我经常花费数小时在 YouTube 上观看各种各样的电影。视频,例如“成功的 7 个秘诀”、“10 个最有用的机器学习工具”,甚至“伦敦最美的 5 个地方”也经常包含在内。 为了让视频播放时间更长并吸引更多观众,人们在您打开视频后,并没有直接告诉您想要知道的内容,而是开始了一个没完没了的独白。 然而,有时,似乎像变魔术一样,您会在评论中发现一位好心人总结了电影并为您提供了要点列表,这样您就不必浪费三十分钟(或十五分钟两次)盯着它看了! 因此,有一天我有了这个想法:“既然我擅长机器学习,我不能让这些视频自动被总结吗?” 在本文中,我将讨论我尝试构建一个功能性但略有缺陷的小型 Python 程序。 从 YouTube 下载音频我们必须首先弄清楚如何下载 YouTube 视频。实际上,我们只需要音频,而不需要整个视频。因此,在从视频中提取音频后,我们将仅下载音频。 因此,我们使用 pip 安装库,并使用以下方法从 YouTube 获取音频。 说明 该脚本使用 pytube 库从特定的 YouTube 视频下载 MP4 格式的音频。首先从 Python 导入 YouTube 类,并指定视频的 URL。yt.filter(file_extension='mp4', only_audio=True).initially().The download(filename='ytaudio.mp4') 行通过仅按文件名 ytaudio.mp4 过滤可用流来下载 MP4 格式的音频。 将 MP4 转换为 WAV 并检查音频音频文件是否已正确下载?通过直接从笔记本发送音频,让我们来验证一下。 说明 此脚本使用 ffmpeg(具有特定的音频编解码器 pcm_s16le)和 16 kHz 的采样率将 MP4 音频文件转换为 WAV 格式。使用 librosa 库,它使用转换后的 WAV 文件来测量其音频采样率。转换命令确保音频与需要给定采样率和 WAV 格式的程序兼容。 音频到文本为了实现低的词错误率,必须将录音转换为文本。这将很有帮助,因为文本可以被 NLP 算法立即处理以进行摘要。 有关我们将用于文本到文本转换的模型,可以在此处找到更多信息。 说明 使用预训练的 Wav2Vec2 模型,此应用程序使用 huggingsound 库进行语音到文本转录。在设置好计算设备(如果可用则为 GPU,否则为 CPU)后,便初始化语音识别模型。使用 librosa 库,音频文件以 30 秒的段落进行处理,并为每个片段存储为单独的 WAV 文件。之后,处理每个 WAV 文件,并将所有转录文本合并成一个单独的文本字符串,以创建音频文件的完整转录。 文本摘要唯一剩下要做的就是总结我们从电影中提取的文本。 只需在摘要按钮上选择 hugging face 过滤器,即可从数百种可用模型中选择最适合您情况的摘要模型。 我将在本项目中使用 Google/Pegasus-Xsum 方法。模型的具体信息可以在此处找到;我将在未来的出版物中讨论这些摘要方法的理论。 使用 HugginFace 的这些预训练模型非常容易;只需看看我在几行代码中如何使用摘要即可。 说明 此应用程序将大文本分解成 1000 个字符的片段,并使用 Google Pegasus XSum 模型对其进行摘要。通过迭代地将每个片段分解成一个简洁的摘要,然后将这些摘要编译成原始文本的最终、浓缩版本。 下一主题Python 数字 |
引言 Python 具有最有用和最简单的功能之一,即默认参数的使用,这是在函数中设置参数初始值。它简化了函数调用,从而使代码更易于阅读和维护。本文将解释……
阅读 4 分钟
在 Python 中,缩进是一种用于指示代码块的方法。向程序添加缩进的目的是告诉解释器,代码语句组属于同一块。如果语句具有相同的缩进级别,...
5 分钟阅读
介绍 停用词是意义不大的常用词,在自然语言处理 (NLP) 任务中经常被过滤掉。像“the”、“is”、“in”和“and”这样的词是典型的例子。删除停用词有助于关注文本中更有意义的词,从而提高...
阅读 4 分钟
?字符串填充是编程中主要在 Python 等语言中使用的一个概念,通过添加额外的字符来更改字符串的长度。此选项通常用于确保数据类型(例如在同一用户中显示的信息)的排序或排序……
7 分钟阅读
Python的requests库是一个强大的流行工具,用于发出HTTP请求。它的一个有用功能是自动处理重定向。重定向在Web上很常见,服务器响应客户端的请求,将其引导到另一个...
阅读 4 分钟
:单纯形算法是用于解决线性规划问题的著名方法。在线性规划中,您通常有一个目标,比如最大化或最小化某个量,以及一组约束条件。这些约束通常以方程的形式表示。例如,想象您...
18 分钟阅读
简介 在繁忙的技术世界中,截屏已成为大多数应用程序和项目的重要组成部分。功能多样的 Python 编程语言提供了各种强大的工具和库来管理许多不同类型的任务,包括截屏。在这篇详细的….
阅读 4 分钟
?并发和线程安全简介 并发是指框架同时执行多个任务或进程的能力。在软件开发方面,并发使程序能够同时执行任务,从而进一步提高效率和响应能力。然而,伴随并发而来的是...
7 分钟阅读
介绍:在本教程中,我们将学习如何使用 Python 中的 Pandas 将列转换为 Int。Python 是数据分析和数据操作的有用语言之一,原因充分。凭借其简单的语法和库,Python 提供了强大的文档。Pandas...
7 分钟阅读
表格简介 在数据处理和分析中,表格是最有效的数据呈现技术之一。无论您处理的数据大小和结构如何,都能够处理表格数据都非常重要,即使后者很小...
7 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India