首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Pytube错误: get_throttling_function_name:无法找到多个匹配的

Pytube错误: get_throttling_function_name:无法找到多个匹配的
EN

Stack Overflow用户
提问于 2022-04-15 11:50:38
回答 1查看 1.8K关注 0票数 5

我正在尝试从url“YouTube https://www.youtube.com/watch?v=uyVYfSNb_Pc&list=PLBxwSeQlMDNiNt72UmSvKBLsxPgGY_Jy-"下载https://www.youtube.com/watch?v=uyVYfSNb_Pc&list=PLBxwSeQlMDNiNt72UmSvKBLsxPgGY_Jy-"播放列表,但是得到错误'get_throttling_function_name:无法找到多个匹配‘。

代码块是:

`

代码语言:javascript
运行
复制
from pytube import Playlist

play_list = Playlist('https://www.youtube.com/watch?v=uyVYfSNb_Pc&list=PLBxwSeQlMDNiNt72UmSvKBLsxPgGY_Jy-')

print(f'Downloading: {play_list.title}')

for video in play_list.videos:
    print(video.title)
    st = video.streams.get_highest_resolution()
    st.download(r'path')  `

我使用的是最新版本的管道。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-16 02:34:08

因为youtube在其末端改变了一些东西,现在您必须将pytube的ciper.py的function_patterns更改为

代码语言:javascript
运行
复制
r'a\.[a-zA-Z]\s*&&\s*\([a-z]\s*=\s*a\.get\("n"\)\)\s*&&\s*'
r'\([a-z]\s*=\s*([a-zA-Z0-9$]{2,3})(\[\d+\])?\([a-z]\)'

你还必须把第288行改为:

代码语言:javascript
运行
复制
nfunc=re.escape(function_match.group(1))),

您将不得不使用此解决方案,直到pytube正式发布修补程序。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71883661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档