我正在使用Youtube-DL库,我注意到当我抓取视频时,一些.mp4文件没有被保存,但其他文件可以保存。
这是我的代码
ydl_opts = {
"download_archive": "./data/en-downloaded.txt",
"restrictfilenames": True,
"nooverwrites": True,
"socket_timeout": 1,
"youtube_include_dash_manifest": True,
"writeinfojson": True,
"writesubtitles": True,
"format": "bestaudio/best",
# "allsubtitles": True,
"subtitlesformat": "ttml",
"progress_hooks": [my_hook],
"subtitlelangs": lang,
"writeautosub": True,
"keepvideo:": True,
# "--write-srt": True,
"postprocessors": [{"key": "FFmpegExtractAudio", "preferredcodec": "wav", "preferredquality": "192",}],
"prefer_ffmpeg": True,
"format": "bestvideo[ext=mp4]+bestaudio",
"outtmpl": "data/raw_files/%(title)s.%(ext)s",
}
我实际上在哪里告诉youtube-dl以确保您保存.mp4文件?
您的 keepvideo 选项中有一个拼写错误,引号内有一个额外的冒号, 取代
"keepvideo:": True,
跟
"keepvideo": True,
youtube-dl 默认为最佳流,除非指定了不同内容。