使用 pytube 从播放列表获取详细信息

问题描述 投票:0回答:1

我正在尝试使用 pytube 来获取播放列表中每个视频的详细信息。 API 文档展示了如何从播放列表下载视频,但不展示如何从中获取信息。

由于每个视频都是一个 YouTube 对象,并且文档说你可以做类似

yt_video.title
的事情,我想我可以这样做:

from pytube import Playlist
    
playlist = Playlist('https://www.youtube.com/playlist?list=PLS1QulWo1RIaJECMeUT4LFwJ-ghgoSH6n')

for video in playlist.videos:

     print(video.title)

但这对我不起作用。运行时出现此错误:

Traceback (most recent call last):
  File "C:\Users\****\AppData\Local\Programs\Python\Python39\lib\site-packages\pytube\__main__.py", line 341, in title
    self._title = self.vid_info['videoDetails']['title']
KeyError: 'videoDetails'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\****\Desktop\dev\api\yt.py", line 15, in <module>
    print(video.title)
  File "C:\Users\****\AppData\Local\Programs\Python\Python39\lib\site-packages\pytube\__main__.py", line 346, in title
    raise exceptions.PytubeError(
pytube.exceptions.PytubeError: Exception while accessing title of https://youtube.com/watch?v=41qgdwd3zAg. Please file a bug report at https://github.com/pytube/pytube

我想知道我做错了什么,或者获取有关播放列表视频的详细信息的正确方法是什么。

python youtube-data-api pytube
1个回答
0
投票

PyTube 不再是最佳选择。 你可以在 gitub 上查看这篇文章

但是您可以使用 PyTubeFix 代替 PyTube。用法相同,但问题较少且维护良好。 我用了很多次,没有任何问题。

安装方式

pip install pytubefix

并更改输入:

# from pytube import Playlist
from pytubefix import Playlist

# OR

# import pytube
import pytubefix as pytube
© www.soinside.com 2019 - 2024. All rights reserved.