我有这个下载youtube视频的脚本
from pytube import YouTube
yt = YouTube('https://www.youtube.com/watch?v=kAGacI3JwS4')
#yt.title
#yt.thumbnail_url
#yt.streams.all()
stream = yt.streams.first()
#stream
stream.download('C:\\Users\')
但我希望这是发生在一个用户提示mode.so它应该要求用户输入网址,然后从那里采取它进一步和下载视频,所以我这样做
>>> pk=input("Enter the url:")
Enter the url:https://www.youtube.com/watch?v=GhklL_kStto
>>> pk
'https://www.youtube.com/watch?v=GhklL_kStto'
>>> pk.title
<built-in method title of str object at 0x02362770>
>>> pk.stream()
Traceback (most recent call last):
File "<pyshell#44>", line 1, in <module>
>>pk.stream()
AttributeError: 'str' object has no attribute 'stream'
这就是错误所得到的。有人能帮我解决这个问题吗?
感谢您的支持!
发布于 2018-07-27 22:23:50
我希望这个答案不会太晚,但问题是pk
是一个字符串,因此:
pk=input("Enter the url:")
在这里,pk
被赋值给一个字符串(也就是您输入的任何内容),所以您不可能创建相关的Youtube
对象。
输入pk.title
时得到描述证明了它是字符串对象的内置方法。您甚至还没有为它创建一个具有stream
方法的YouTube
对象。
您可以像这样修复它:
url = input("Enter the url:")
pkl = YouTube(url)
pkl.stream()
希望这能有所帮助
https://stackoverflow.com/questions/48647147
复制相似问题