获取Youtube视频详细信息时Pytube抛出错误

时间:2020-10-26 08:42:26

标签: python pytube

运行代码时用于下载YouTube视频或获取视频详细信息。我遇到以下错误

    C:\Users\ankit\PycharmProjects\tube\venv\Scripts\python.exe C:/Users/ankit/PycharmProjects/tube/main.py
Traceback (most recent call last):
  File "C:\Users\ankit\PycharmProjects\tube\main.py", line 2, in <module>
    yt = YouTube('http://youtube.com/watch?v=9bZkp7q19f0')
  File "C:\Users\ankit\PycharmProjects\tube\venv\lib\site-packages\pytube\__main__.py", line 91, in __init__
    self.prefetch()
  File "C:\Users\ankit\PycharmProjects\tube\venv\lib\site-packages\pytube\__main__.py", line 183, in prefetch
    self.js_url = extract.js_url(self.watch_html)
  File "C:\Users\ankit\PycharmProjects\tube\venv\lib\site-packages\pytube\extract.py", line 143, in js_url
    base_js = get_ytplayer_config(html)["assets"]["js"]
KeyError: 'assets'

Process finished with exit code 1

使用此代码

    from pytube import YouTube

yt = YouTube('http://youtube.com/watch?v=9bZkp7q19f0')

print(yt.title)

print(yt.streams)

2 个答案:

答案 0 :(得分:1)

此错误现已在pytube存储库中修复。只需从存储库中进行重新安装就可以了。

const fse = require('fs-extra');

const srcDir = `path/to/file`;
const destDir = `path/to/destination/directory`;

// To copy a folder
fse.copySync(srcDir, destDir, function (err) {
  if (err) {
    console.error(err);
  } else {
    console.log("success!");
  }
});

答案 1 :(得分:0)

我认为,当官方文档的前两个步骤失败时,您的库可能会损坏。我实际上无法重现您的错误,并且从库中的其他各个模块收到导入错误。

ImportError:无法从“ pytube.compat”导入名称“ quote”

当我解决这个问题时,我得到了:

ImportError:无法从“ pytube.compat”导入名称“ urlencode”

我放弃了这一点。

我似乎还记得以前在处理youtube内容时遇到过相同或相似的问题。您可以按照以下错误操作并尝试修复导入,也可以仅将其命名为一天并尝试使用“ youtube-dl”库:

点安装youtube_dl

相关问题