Skip to main content

Unofficial API for YouTube Music

Project description

PyPI Downloads Ask questions at https://gitter.im/sigma67/ytmusicapi Code coverage Latest release Commits since latest release

ytmusicapi is a Python 3 library to send requests to the YouTube Music API. It emulates YouTube Music web client requests using the user’s cookie data for authentication.

Features

Browsing:
  • search (including all filters)

  • get artist information and releases (songs, videos, albums, singles, related artists)

  • get user information (videos, playlists)

  • get albums

  • get song metadata

  • get watch playlists (playlist that appears when you press play in YouTube Music)

  • get song lyrics

Exploring music:
  • get moods and genres playlists

  • get latest charts (globally and per country)

Library management:
  • get library contents: playlists, songs, artists, albums and subscriptions

  • add/remove library content: rate songs, albums and playlists, subscribe/unsubscribe artists

Playlists:
  • create and delete playlists

  • modify playlists: edit metadata, add/move/remove tracks

  • get playlist contents

Uploads:
  • Upload songs and remove them again

  • List uploaded songs, artists and albums

Usage

from ytmusicapi import YTMusic

ytmusic = YTMusic('headers_auth.json')
playlistId = ytmusic.create_playlist('test', 'test description')
search_results = ytmusic.search('Oasis Wonderwall')
ytmusic.add_playlist_items(playlistId, [search_results[0]['videoId']])

The tests are also a great source of usage examples.

Requirements

Setup and Usage

See the Documentation for detailed instructions

Contributing

Pull requests are welcome. There are still some features that are not yet implemented. Please, refer to CONTRIBUTING.rst for guidance.

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

ytmusicapi-0.19.0.tar.gz (37.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ytmusicapi-0.19.0-py3-none-any.whl (47.0 kB view details)

Uploaded Python 3

File details

Details for the file ytmusicapi-0.19.0.tar.gz.

File metadata

  • Download URL: ytmusicapi-0.19.0.tar.gz
  • Upload date:
  • Size: 37.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

File hashes

Hashes for ytmusicapi-0.19.0.tar.gz
Algorithm Hash digest
SHA256 e95216365952d5e1f50cc5af00966bf2c35d8eaf34a694ae0cfb715d25cc3deb
MD5 26baedf1061341e669c7063f6babb110
BLAKE2b-256 e414fd6229fd78f4cc3314248d9af19d60a968c6e2312c12e2166a6a6e46f757

See more details on using hashes here.

File details

Details for the file ytmusicapi-0.19.0-py3-none-any.whl.

File metadata

  • Download URL: ytmusicapi-0.19.0-py3-none-any.whl
  • Upload date:
  • Size: 47.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

File hashes

Hashes for ytmusicapi-0.19.0-py3-none-any.whl
Algorithm Hash digest
SHA256 25d301adf0aaf06becf3bb1832f1219960f87dbcd6d494216f4a599e461c7b06
MD5 5e560db98c5541a5e6049cfaf702dc49
BLAKE2b-256 039ec991c8034a5efc86445e6ee225e36bedab78d21911745037197cce57e5a9

See more details on using hashes here.

Supported by

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