Open In App

Pafy – Getting Weak Reference of Stream

Last Updated : 19 Apr, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will see how we can get weak reference if available for the given youtube video stream in pafy. Pafy is a python library to download YouTube content and retrieve metadata. Pafy object is the object which contains all the information about the given video. Stream is basically available resolution of video is available on youtube. A weakly referenced object is cleared by the Garbage Collector when it’s weakly reachable. Weak reachability means that an object has neither strong nor soft references pointing to it. The object can be reached only by traversing a weak reference.

We can get the pafy object with the help of new method and with the help of allstreams attribute we can get all the streams available for the video, below is the command to get the pafy object for given video.

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

The video url should exist on youtube as it get the information of those videos which are present on youtube. YouTube is an American online video-sharing platform.

In order to do this we use __weakref__ attribute with the pafy object of video 

Syntax : video.__weakref__

Argument : It takes no argument

Return : It returns list 
 

Below is the implementation  

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)


Output : 

None

Another example 

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)


Output : 

None

 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads