Pytube标题生成问题

2024-04-26 14:53:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我有YouTube链接。我需要从视频中提取字幕。我的密码是-

from pytube import YouTube
yt = YouTube('https://youtu.be/.....')
caption =yt.captions.get_by_language_code('en')
print(caption.generate_srt_captions())
 
Output = > 00:00:01 --> 00:00:02
This is caption ex..
00:00:03--> 00:00:04
This is second line

需要那种类型的输出吗👇👇

这是标题,这是第二行


Tags: fromhttpsimport密码视频youtubeis链接
1条回答
网友
1楼 · 发布于 2024-04-26 14:53:09

输出为字符串,因此可以使用.split('\n')。我简化了每一行的循环,只为字典节省了时间和标题。这不是最好的解决方案,但它是有效的

from pytube import YouTube


caption_list = []
index = 0
yt = YouTube('https://youtu.be/.....')
caption = yt.captions.get_by_language_code('en')
for line in str(caption.generate_srt_captions()).split('\n'):
    if index == 0:
        caption_list.append({})
    if index in (1, 2):
        caption_list[len(caption_list)-1][('time', 'caption')[index-1]] = line
    index += 1
    if line == '':
        index = 0
for dic in caption_list:
    print('{} : {}'.format(dic['time'], dic['caption']))

相关问题 更多 >