Skip to main content

No-boilerplate, async and typed YouTube Data API access.

Project description

sly logo Sly YouTube Data API for Python

🚧 This library is an early work in progress! Breaking changes may be frequent.

🐍 For Python 3.10+

No-boilerplate, async and typed YouTube Data API access. 😋

pip install slyytdapi

This library does not have full coverage. All methods are read-only. Currently, the following topics are supported:

  • Videos
  • Channels
  • Comment threads
  • Video search
  • Channel members (requires approval from YouTube)

For collecting statistics about your own channel using the YouTube analytics API, see YTAAPI.


Example usage:

import asyncio
from SlyYTDAPI import *

async def main():
    # don't forget to keep your secrets secret!
    yt = YouTubeData(open('api_key.txt').read())

    my_video = await yt.video('dQw4w9WgXcQ')
    print(F"Check this out!\n{my_video.link()}")

    # keep it simple
    _ = await my_video.comments(limit=10) # list[Comment]

    # or opt in to generators
    print('\n---\n'.join([
        F"{c.author_name} > {c.body}"
        async for c in my_video.comments(limit=10)
    ]))
    
asyncio.run(main())

Example CLI usage for getting authorized:

# WINDOWS
py -m SlyYTDAPI grant
# MacOS or Linux
python3 -m SlyYTDAPI grant

Granting credentials requires a Google Cloud Console account and JSON file. Please see https://docs.dunkyl.net/SlyAPI-Python/tutorial/oauth2.html for more information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

SlyYTDAPI-0.3.0.tar.gz (10.2 kB view details)

Uploaded Source

Built Distribution

SlyYTDAPI-0.3.0-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file SlyYTDAPI-0.3.0.tar.gz.

File metadata

  • Download URL: SlyYTDAPI-0.3.0.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.0

File hashes

Hashes for SlyYTDAPI-0.3.0.tar.gz
Algorithm Hash digest
SHA256 3f79d4d375e24d90cac84e6093eb0f0d85cfaabb42efb148e8bd6c495b406150
MD5 cf5f33f6a36bfd23d158bf023a12fec5
BLAKE2b-256 02d9dc05067557e0bb953477d4b1a36e341cb6e63b6177b82bca3b4239a75284

See more details on using hashes here.

File details

Details for the file SlyYTDAPI-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: SlyYTDAPI-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.0

File hashes

Hashes for SlyYTDAPI-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc06f7912567552c8245466d3a3849a0841f5b7784b23190367550ca732e8563
MD5 4c40e0752b38b6757dc72f4c347c9351
BLAKE2b-256 065be747548e7b7522ed6a069c0eae54f4d99d5f2183933cba8dc426d29805a1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page