Skip to main content

Python YouTube

A Python wrapper around for YouTube Data API V3.

Build Status

THANKS

This project structure is base on Python-Twitter.

Thanks a lot for Python-Twitter Developers.

Introduction

Library provides a service to easy use YouTube Data API V3.

The api docs you can find on YouTube Data API Reference

Using

The API is exposed via the pyyoutube.Api class.

To create an instance of the pyyoutube.Api with two different methods. Use only api key or provide google client id and key. Now only for api key:

In [1]: from pyyoutube import Api
In [2]: api = Api(api_key='your api key')

To fetch one youtube channel’s data:

In [3]: res = api.get_channel_info(channel_name='GoogleDevelopers')

In [4]: res
Out[5]: Channel(id=UC_x5XG1OV2P6uZZ5FSM9Ttw,kind=youtube#channel)

To fetch youtube channel’s playlists:

In [6]: res = api.get_playlist(channel_id='UC_x5XG1OV2P6uZZ5FSM9Ttw')

In [7]: res
Out[7]:
([Playlist(id=PLOU2XLYxmsIJpufeMHncnQvFOe0K3MhVp,kind=youtube#playlist),
  Playlist(id=PLOU2XLYxmsIJXsH2htG1g0NUjHGq62Q7i,kind=youtube#playlist),
  Playlist(id=PLOU2XLYxmsIJJVnHWmd1qfr0Caq4VZCu4,kind=youtube#playlist),
  Playlist(id=PLOU2XLYxmsIKW-llcbcFdpR9RjCfYHZaV,kind=youtube#playlist),
  Playlist(id=PLOU2XLYxmsIIOSO0eWuj-6yQmdakarUzN,kind=youtube#playlist)],
 {'totalResults': 416, 'resultsPerPage': 5})

To fetch one playlist’s items:

In [8]: res = api.get_playlist_item(playlist_id='PLOU2XLYxmsIJpufeMHncnQvFOe0K3MhVp')

In [9]: res
Out[9]:
([PlaylistItem(id=UExPVTJYTFl4bXNJSnB1ZmVNSG5jblF2Rk9lMEszTWhWcC41NkI0NEY2RDEwNTU3Q0M2,kind=youtube#playlistItem),
  PlaylistItem(id=UExPVTJYTFl4bXNJSnB1ZmVNSG5jblF2Rk9lMEszTWhWcC4yODlGNEE0NkRGMEEzMEQy,kind=youtube#playlistItem),
  PlaylistItem(id=UExPVTJYTFl4bXNJSnB1ZmVNSG5jblF2Rk9lMEszTWhWcC4wMTcyMDhGQUE4NTIzM0Y5,kind=youtube#playlistItem),
  PlaylistItem(id=UExPVTJYTFl4bXNJSnB1ZmVNSG5jblF2Rk9lMEszTWhWcC41MjE1MkI0OTQ2QzJGNzNG,kind=youtube#playlistItem)],
 {'totalResults': 4, 'resultsPerPage': 5})

In [10]: res[0][1].snippet.resourceId
Out[10]: {'kind': 'youtube#video', 'videoId': 'cxABjSOa6RY'}

To fetch one youtube video’s data:

In [11]: res = api.get_video_info(video_id='cxABjSOa6RY')

In [12]: res
Out[12]: Video(id=cxABjSOa6RY,kind=youtube#video)

To fetch many youtube video’s data:

In [13]: res = api.get_videos_info(video_ids=['cxABjSOa6RY', '21BbGGGrq9s'])

In [14]: res
Out[14]:
[Video(id=cxABjSOa6RY,kind=youtube#video),
 Video(id=21BbGGGrq9s,kind=youtube#video)]

TODO

Now this has follows api.

  • Channel Info

  • Playlist Info

  • PlaylistItem Info

  • Video Info

Doing:

  • comments

Metadata

Release files for python-youtube 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for python-youtube 0.2.0
File Size Uploaded
python-youtube-0.2.0.tar.gz 14.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for python-youtube 0.2.0
File Interpreter ABI Platform
python_youtube-0.2.0-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 29.3 kB

Release files / python-youtube-0.2.0.tar.gz

Download URL python-youtube-0.2.0.tar.gz
Size 14.5 kB
Tags Source
SHA-256 checksum
How to use checksums
ff06c1fda1f6a9a11d6c59b97c8b80a4bc18340a4422c9b543711bc54f5aace2
BLAKE2b-256 checksum
How to use checksums
1c310c3c1c2cec972ea84cd266386353dc2dce2e426ea76667d8308f227369ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.3

Release files / python_youtube-0.2.0-py2.py3-none-any.whl

Download URL python_youtube-0.2.0-py2.py3-none-any.whl
Size 14.7 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
5fcb25362c799e97192669e0317b6a8e46cc8642a2b43323d8bd18e611eb92a1
BLAKE2b-256 checksum
How to use checksums
4f6b8e9f9b1877cea49516ab79346d4a2ddc459440049c50dbd55fa2108e1c48
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.3

Release history Release notifications | RSS feed

0.9.9

2 release files

0.9.8

2 release files

0.9.7

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.3

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.4

2 release files

0.6.0

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.5

2 release files

0.4.0

2 release files

0.3.0

2 release files

This release

0.2.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page