我正在尝试从网址“https://www.youtube.com/watch?v=uyVYfSNb_Pc&list=PLBxwSeQlMDNiNt72UmSvKBLsxPgGY_Jy-”下载 YouTube 播放列表,但收到错误“get_throtdling_function_name:无法找到多个匹配”。
代码块是:
`
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') `
我正在使用最新版本的 pytube。
因为 youtube 改变了一些东西,现在你必须改变 pytube cipher.pysfunction_patterns
到以下
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 行更改为:
nfunc=re.escape(function_match.group(1))),
在 pytube 正式发布修复程序之前,您必须使用此解决方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)