我制作了一些脚本来下载并将视频分割成更小的片段,但我遇到了一个问题。Python不能使用空间,我不能在下载之前重命名视频。
video = pytube.YouTube(link)
video.filename(tepm)
'YouTube' object has no attribute 'filename'
但如果我把标题保留在原始FFmpeg中,就无法阅读它,因为在视频的标题中是拆分
def downloadVideo(link):
video = pytube.YouTube(link)
video.filename(word)
stream = video.streams.get_highest_resolution()
stream.download()
# pass the youtube video link to download
downloadVideo(video_url)
print("video is downloaded")
#Cut video
os.system("ffmpeg -i "+ +".mp4" + " -c copy -map 0 -segment_time 00:00:30 -f segment -
reset_timestamps 1 output%%.mp4")
视频或标题应使用双引号"quot。由于ffmpeg命令是作为批处理命令编写的。bat文件不支持空白。应该是这样的。
""C:\Users\Desktop\code\YT downloader\Download\file name"" #using " to place quotes
这里如果\",则以下内容将被视为一件事。
C:\Users\Desktop\code\YT
这将被视为另一个
downloader\Download\file
名称将是其他名称。另一件麻烦的事情是标题中的特殊字符ffmpeg会在文件名中出现特殊字符时出错。我不知道原因,但你可以像这个一样修复它
char = "|/<>?,:'}{][+_-=)(*&%$#@!~`"
for c in char:
title = title.replace(c , "")
我实际支持哪些字符,不支持哪些字符。我根据自己的想法添加,它正在发挥作用。
问题的答案可以是。
使用此命令可以更改文件名。
stream.download(filename="vid.mp4")
据我所知,这是在pytube 中重命名视频的方法