📜  Pafy – 获取 Stream 的弱引用

📅  最后修改于: 2022-05-13 01:54:47.869000             🧑  作者: Mango

Pafy – 获取 Stream 的弱引用

在本文中,我们将了解如果可用于 pafy 中给定的 youtube 视频流,我们如何获得弱引用。 Pafy 是一个Python库,用于下载 YouTube 内容和检索元数据。 Pafy 对象是包含有关给定视频的所有信息的对象。流基本上可用的视频分辨率可在 youtube 上找到。弱引用对象在弱可访问时由垃圾收集器清除。弱可达性意味着一个对象既没有指向它的强引用也没有软引用。只有遍历弱引用才能到达对象。

我们可以借助 new 方法获取 pafy 对象,借助 allstreams 属性我们可以获取视频可用的所有流,下面是获取给定视频的 pafy 对象的命令。

video = pafy.new(url)
streams = video.allstreams

视频 url 应该存在于 youtube 上,因为它会获取 youtube 上存在的那些视频的信息。 YouTube 是美国的在线视频分享平台。

为了做到这一点,我们使用 __weakref__ 属性和视频的 pafy 对象

下面是实现

Python3
# importing pafy
import pafy
   
# url of video
url = "https://www.youtube.com / watch?v = vG2PNdI8axo"
   
# getting video
video = pafy.new(url)
 
# getting all the available streams
streams = video.allstreams
 
# selecting one stream
stream = streams[2]
 
# getting weak reference of the stream
value = stream.__weakref__
 
# printing the value
print(value)


Python3
# importing pafy
import pafy
   
# url of video
url = "https://www.youtube.com / watch?v = i6rhnSoK_gc"
   
# getting video
video = pafy.new(url)
 
# getting all the available streams
streams = video.allstreams
 
# selecting one stream
stream = streams[4]
 
# getting weak reference of the stream
value = stream.__weakref__
 
# printing the value
print(value)


输出 :

None

另一个例子

Python3

# importing pafy
import pafy
   
# url of video
url = "https://www.youtube.com / watch?v = i6rhnSoK_gc"
   
# getting video
video = pafy.new(url)
 
# getting all the available streams
streams = video.allstreams
 
# selecting one stream
stream = streams[4]
 
# getting weak reference of the stream
value = stream.__weakref__
 
# printing the value
print(value)

输出 :

None