我想从需要登录的站点使用youtube-dl下载多个文件。Python - youtube-dl强制每次登录
我遇到的问题是,youtube-dl是登录第一个没有问题的视频,但不会再次登录下一个视频。
如何在每次调用函数时强制youtube-dl登录每个视频?也许重置,每次停止youtube-dl。
def video_download(path, url):
ydl = youtube_dl.YoutubeDL(
{
'outtmpl': path + '.mp4',
'format': 'bestvideo+bestaudio/best',
'username': email,
'password': password,
# 'quiet': True
})
with ydl:
ydl.download([url])
time.sleep(45)
该函数实际上是在循环中调用的,因为我为每个文件/视频设置了outtmpl。
不同的情况下,第一个工作,下一个不要再次登录。 我需要每次登录时重复。
<youtube_dl.YoutubeDL.YoutubeDL object at 0x0000000004E74C18>
<youtube_dl.YoutubeDL.YoutubeDL object at 0x00000000032BED68>
WARNING: Unable to download kaltura session JSON: HTTP Error 401: UNAUTHORIZED
<youtube_dl.YoutubeDL.YoutubeDL object at 0x0000000004D6D898>
WARNING: Unable to download kaltura session JSON: HTTP Error 401: UNAUTHORIZED
Terminal/Output:
<youtube_dl.YoutubeDL.YoutubeDL object at 0x00000000050E4C18>
**[safari] Downloading login form
[safari] Login successful**
[safari] 9781787283664/video1_1: Downloading webpage
.............................
<youtube_dl.YoutubeDL.YoutubeDL object at 0x000000000337DD68>
[safari] 9781787283664/video1_2: Downloading webpage
[safari] 9781787283664/video1_2: Downloading kaltura session JSON
WARNING: Unable to download kaltura session JSON: HTTP Error 401: UNAUTHORIZED
----更新---
我尝试使用命令行,但我有以下错误,如果我使用Python进口未出现:
错误:固定输出的名字,但多个文件下载
的CMD:
youtube-dl -u username_paceholder -p password_paceholder -o 'D:\DevProj\DownloadCourses\Safari\x_downloads\Django1 \_01_Django ABC' https://www.site_placeholder.com/library/view/django-example/9781787283664/video1_2.html
您提供的链接是播放列表链接? –
没有。我只是想从一个注册站点一个接一个地下载文件(来设置位置和标题),但是youtube-dl只记录第一个文件,而不是其他文件。因为这我收到以下文件授权错误 – user3541631
@ user3541631嗨,请检查我的最新答案 – Wboy