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

At this point ytmusicapi supports nearly all content interactions in the YouTube Music web app. If you find something missing or broken, feel free to create an issue

Browsing:
  • search (including all filters) and suggestions

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

  • get user information (videos, playlists)

  • get albums

  • get song metadata

  • get watch playlists (next songs when you press play/radio/shuffle 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

  • get and modify play history

Playlists:
  • create and delete playlists

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

  • get playlist contents

  • get playlist suggestions

Uploads:
  • upload songs and remove them again

  • list uploaded songs, artists and albums

Usage

from ytmusicapi import YTMusic

yt = YTMusic('oauth.json')
playlistId = yt.create_playlist('test', 'test description')
search_results = yt.search('Oasis Wonderwall')
yt.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

This version

1.0.0

Download files

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

Source Distribution

ytmusicapi-1.0.0.tar.gz (67.2 kB view details)

Uploaded Source

Built Distribution

ytmusicapi-1.0.0-py3-none-any.whl (66.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ytmusicapi-1.0.0.tar.gz
  • Upload date:
  • Size: 67.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for ytmusicapi-1.0.0.tar.gz
Algorithm Hash digest
SHA256 3b174cec83e23bef3c9d15df5b9d9bc7c80a51377cdc50682da03b9d2c8a2589
MD5 8307733f5d791cc1335eba90ae2e61cf
BLAKE2b-256 8c34796777ebcd224d4b7deefa73be529c45e2f0f24bc9fba0b63f6555e353f0

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: ytmusicapi-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 66.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for ytmusicapi-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 769f4ac9fc90b59e9bdb2cc5ef1e9829dd0a7b1ff1a246007b6c738770fce939
MD5 127fc5e7e943dc0033ef8c81be9b1229
BLAKE2b-256 0a74fee0f00aa3205662c12bf216f609b713ed015695476c60416127871d476c

See more details on using hashes here.

Provenance

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