【发布时间】:2021-02-14 12:42:39
【问题描述】:
我已经搜索了该主题,并且正在尝试找到一种方法来列出特定播放器的 URL 或链接。 这是我得到的,但对我不起作用
import re
from pytube import Playlist
playlist = Playlist("https://www.youtube.com/playlist?list=PL6gx4Cwl9DGCkg2uj3PxUWhMDuTw3VKjM")
playlist._video_regex = re.compile(r"\"url\":\"(/watch\?v=[\w-]*)")
print('Number of videos in playlist: %s' % len(playlist.video_urls))
for url in playlist.video_urls:
print(url)
我得到的视频数量为 0。 知道如何使这段代码工作吗?
这是另一个应该从播放列表下载所有链接的代码
from pytube import Playlist
try:
playlist = Playlist('https://www.youtube.com/playlist?list=PLcow8_btriE11hzMbT3-B1sBg4YIc-9g_')
playlist.download_all(download_path='./Videos')
except Exception as e:
print(e)
但我得到了这个'Playlist' object has no attribute 'download_all'
【问题讨论】:
-
您的代码对我来说运行良好。问题可能与输出有关。
-
我尝试了上面的脚本,它按预期工作,我得到了输出:
Number of videos in playlist: 23循环中的 url 转储。 -
那么什么可能导致代码对我不起作用?我正在使用 Jupyter 笔记本。可能是这个原因吗?
-
不,笔记本与此无关。尝试将 pytube 升级到新版本
-
@YasserKhalil 您的代码中缺少“流”部分。我分享的链接有这个。我在下面看到您添加并回答了您复制此代码的位置。很高兴它有效。