Access YouTube Public Data without YouTubeAPI
Project description
OpenTube
Access YouTube Public Data without YouTubeAPI
Table of Contents
Installing
Python 3.6 or higher is required
# Linux/macOS
python3 -m pip install -U opentube
# Windows
python -m pip install -U opentube
Build from source
pip install git+https://github.com/jnsougata/opentube
Quick Start
import opentube
channel = opentube.Channel('@GYROOO')
print(channel.metadata)
video = opentube.Video('WVDT4lSozHk')
print(video.metadata)
playlist = opentube.Playlist('PL-xXQjd8X_Q-xXQjd8X_Q-xXQjd8X_Q-')
print(playlist.metadata)
search = opentube.Search.video('YouTube Rewind 2018')
print(search.metadata)
search = opentube.Search.channel('PewDiePie')
print(search.metadata)
search = opentube.Search.playlist('Unlock Your Third Eye')
print(search.metadata)
Usage
Channel
| Property | Return Type | Description |
|---|---|---|
live |
bool |
Returns True if the channel is live |
streaming_now |
str |
Returns the video id of the ongoing livestream |
current_streams |
List[str] |
Returns a list of ids of ongoing livestreams |
old_streams |
List[str] |
Returns a list of ids of old livestreams |
video_count |
int |
Returns total number of videos uploaded by the channel |
upcoming |
Video |
Returns a video object of the upcoming video |
upcomings |
List[str] |
Returns a list of ids of upcoming videos |
playlists |
List[str] |
Returns a list of playlist ids |
metadata |
Dict[str, Any] |
Returns the metadata of the channel in dict format |
last_uploaded |
Video |
Most recently uploaded video of the channel |
last_streamed |
Video |
Most recently completed livestream of the channel |
| Method | Return Types | Description |
|---|---|---|
uploads(limit: int | None) |
List[str] |
Returns a list of video ids of the uploaded videos |
Video
| Properties | Return Types | Description |
|---|---|---|
metadata |
Dict[str, Any] |
Returns the metadata of the video in dict format |
Playlist
| Properties | Return Types | Description |
|---|---|---|
metadata |
Dict[str, Any] |
Returns the metadata of the playlist in dict format |
Search
| Method | Return Type | Description |
|---|---|---|
channel(name: str) |
Channel |
Finds a channel with the given keywords |
video(name: str) |
Video |
Finds a video with the given keywords |
playlist(name: str) |
Playlist |
Finds a playlist with the given keywords |
channels(name: str, limit: int | None) |
List[str] |
Finds all channels that matches the given keywords |
videos(name: str, limit: int | None) |
List[str] |
Finds all videos that matches the given keywords |
playlists(name: str, limit: int | None) |
List[str] |
Finds all playlists that matches the given keywords |
Possible Exceptions
| Class | Description |
|---|---|
InvalidURL |
Raised when then url is not a valid YouTube endpoint |
TooManyRequests |
Raised when client IP receives soft ban from YouTube |
RequestError |
Raised for any type of request error not handled by the library |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
opentube-1.7.4.tar.gz
(12.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
opentube-1.7.4-py3-none-any.whl
(14.7 kB
view details)
File details
Details for the file opentube-1.7.4.tar.gz.
File metadata
- Download URL: opentube-1.7.4.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b1358c13bea98bcca6ea2a7b3170047e7c6909693842f55138dd9e281eeb7ec6
|
|
| MD5 |
a3865ff9eea6ca0a7267ced96ee133ad
|
|
| BLAKE2b-256 |
04639258016358c72a857df4341a87b4e85836060abbce9d3aa405b00363d24f
|
File details
Details for the file opentube-1.7.4-py3-none-any.whl.
File metadata
- Download URL: opentube-1.7.4-py3-none-any.whl
- Upload date:
- Size: 14.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fb17b043d2ae15f41d5261987ef92f96a630befc9f2ec72ddf195d5743e2badc
|
|
| MD5 |
d7fc73d6dd5261f691fd9ef545021ec7
|
|
| BLAKE2b-256 |
dc12770a83de6ce39852215fde79afcf94e23590f38a0cac65e5825f767565d6
|