Skip to main content

Unofficial API for YouTube Music

Project description

PyPI Downloads Code coverage Latest release Commits since latest release

A work-in-progress API that emulates web requests from the YouTube Music web client.

Currently you need to extract your authentication data from your web browser and provide it through a file for it to work.

Features

Browsing:
  • get artist information and releases (songs, videos, albums, singles)

  • get albums

  • search (including all filters)

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, delete, and modify playlists

  • get playlist contents, add/remove tracks

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

This version

0.8.1

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.8.1.tar.gz (20.5 kB view hashes)

Uploaded Source

Built Distribution

ytmusicapi-0.8.1-py3-none-any.whl (23.6 kB view hashes)

Uploaded Python 3

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