跳转到主要内容

SE::YouTube::Video - YouTube 视频数据爬虫工具

爬虫工具概览​

YouTube 视频数据爬虫工具。通过该爬虫工具,您可以抓取视频的所有主要数据,以及字幕和评论。您需要使用 YouTube 视频页面的链接作为查询。可以使用 SE::YouTubeSE::YouTube 收集视频链接。使用 YouTube 视频爬虫工具,可以在多线程模式下采集视频的所有数据。

A-Parser 的功能允许保存 SE::YouTube::Video 爬虫工具的抓取设置以供后续使用(预设),设置数据抓取计划等等。

得益于内置强大的 Template Toolkit 模板引擎,可以将结果保存为您需要的任何形式和结构,该引擎允许对结果应用额外的逻辑,并以各种格式输出数据,包括 JSON、SQL 和 CSV。

采集的数据​

  • 视频标题和描述
  • 视频时长
  • 观看次数、点赞数和评论数
  • 预览图链接
  • 作者姓名、头像和频道链接,以及订阅者数量
  • 视频字幕(包括显示时间信息)
  • 标签列表
  • 评论列表(包括对评论的回复)
    • 评论 ID 和父评论 ID(针对回复)
    • 作者姓名、个人资料链接和头像
    • 评论文本和发布时间
  • 相似视频列表
    • 视频链接和标题
    • 作者和日期
    • 观看次数和视频时长
  • 视频章节信息 ($chapters)
    • 标题、以秒为单位的开始时间和预览图链接

功能​

  • 选择界面语言
  • 选择字幕语言
  • 指定评论页数(每页约 20 条评论)
  • 指定每条评论的最大回复页数(第一页约 10 条回复,后续页约 50 条)
  • 指定相似视频页数(每页约 20 个视频)
  • 支持 Shorts 短视频

应用场景​

  • 采集 YouTube 视频的统计数据
  • 抓取字幕和评论作为文本来源
  • 查找相似视频

工作特性​

字幕语言选择逻辑​

爬虫工具使用以下优先级(按降序排列):作者上传、作者上传的翻译版、自动生成、自动生成的翻译版。

例如,在爬虫工具中设置为抓取英语字幕,那么:

  • 如果视频有作者上传的英语字幕 - 将抓取作者上传的字幕
  • 如果视频有作者上传的字幕,但是其他语言 - 将抓取作者上传的翻译成英语的字幕
  • 如果视频没有作者上传的字幕,但有自动生成的英语字幕 - 将抓取自动生成的字幕
  • 如果视频没有作者上传的字幕,且自动生成的是其他语言(因为视频是其他语言) - 将抓取自动生成的翻译版

评论抓取​

评论是在单线程中采集的,因此数据抓取过程可能相当漫长,尤其是在抓取大量页面和回复时。不建议设置过多的回复页数,通常 1-3 页即可,或者可以完全关闭回复抓取 - 这将大大提高工作速度。

查询​

需要提供视频链接作为查询,例如:

https://www.youtube.com/watch?v=lWA2pjMjpBs
https://www.youtube.com/watch?v=EDwb9jOVRtU
https://www.youtube.com/watch?v=5NPBIwQyPWE

结果输出示例​

得益于内置的 Template Toolkit 模板引擎,A-Parser 支持灵活的结果格式化,使其能够以任意形式以及结构化形式(如 CSV 或 JSON)输出结果。

默认输出​

结果格式:

$query - $title\nViews: $viewsCount, likes: $likesCount, comments: $commentsCount\n

结果将输出视频链接、标题、点赞数、观看次数和评论数:

https://www.youtube.com/watch?v=5NPBIwQyPWE - Avril Lavigne - Complicated (Official Video)
Views: 571331713, likes: 3959948, comments: 143597
https://www.youtube.com/watch?v=EDwb9jOVRtU - Madonna - Hung Up (Official Video) [HD]
Views: 414662791, likes: 2153344, comments: 91895
https://www.youtube.com/watch?v=lWA2pjMjpBs - Rihanna - Diamonds
Views: 2104207258, likes: 10235971, comments: 394622

输出字幕​

结果格式:

$query\n$subtitles.format('$text ')\n\n

结果将输出视频链接和指定语言的字幕。

输出到 CSV 表格​

内置工具 tools.CSVLine 允许创建正确的表格文档,可直接导入 Excel 或 Google 表格。

通用结果格式:

[% tools.CSVline(query, p1.author, p1.date, p1.duration, p1.title, p1.viewsCount, p1.likesCount, p1.commentsCount, p1.tags.format('$tag,')) %]

文件名:

$datefile.format().csv

初始文本:

Link,Author,"Publish date",Duration,Title,"Views count","Likes count","Comments count",Tags

提示

在通用结果格式中应用了 Template Toolkit 模板引擎。

在结果文件名中,只需将文件扩展名更改为 csv。

要在任务编辑器中使用“Prepend text”选项,需要激活“More options”。 在“Prepend text”中按逗号分隔写入列名,并将第二行留空。

可能的设置​

参数名称默认值描述
Interface languageEnglish选择界面语言
Subtitles languageEnglish选择字幕语言
Comments pages count5评论页数
Pages count for replies3每条评论的回复页数
Pages count for related videos5相似视频页数
Login required is error☑指示爬虫工具将需要登录的消息视为错误并重试