Socket
Socket
Sign inDemoInstall

ytmusicapi

Package Overview
Dependencies
1
Maintainers
1
Alerts
File Explorer

Install Socket

Detect and block malicious and high-risk dependencies

Install

    ytmusicapi

Unofficial API for YouTube Music


Maintainers
1

Readme

ytmusicapi: Unofficial API for YouTube Music ############################################

.. image:: https://img.shields.io/pypi/dm/ytmusicapi?style=flat-square :alt: PyPI Downloads :target: https://pypi.org/project/ytmusicapi/

.. image:: https://badges.gitter.im/sigma67/ytmusicapi.svg :alt: Ask questions at https://gitter.im/sigma67/ytmusicapi :target: https://gitter.im/sigma67/ytmusicapi

.. image:: https://img.shields.io/codecov/c/github/sigma67/ytmusicapi?style=flat-square :alt: Code coverage :target: https://codecov.io/gh/sigma67/ytmusicapi

.. image:: https://img.shields.io/github/v/release/sigma67/ytmusicapi?style=flat-square :alt: Latest release :target: https://github.com/sigma67/ytmusicapi/releases/latest

.. image:: https://img.shields.io/github/commits-since/sigma67/ytmusicapi/latest?style=flat-square :alt: Commits since latest release :target: https://github.com/sigma67/ytmusicapi/commits

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

Features

| 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, podcasts, channels
  • 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

| Podcasts:

  • get podcasts
  • get episodes
  • get channels
  • get episodes playlists

| Uploads:

  • upload songs and remove them again
  • list uploaded songs, artists and albums

| Localization:

  • all regions are supported (see locations FAQ <https://ytmusicapi.readthedocs.io/en/stable/faq.html#which-values-can-i-use-for-locations>__
  • 16 languages are supported (see languages FAQ <https://ytmusicapi.readthedocs.io/en/stable/faq.html#which-values-can-i-use-for-languages>__

If you find something missing or broken, check the FAQ <https://ytmusicapi.readthedocs.io/en/stable/faq.html>__ or feel free to create an issue <https://github.com/sigma67/ytmusicapi/issues/new/choose>__.

Requirements

Setup

See the Documentation <https://ytmusicapi.readthedocs.io/en/stable/usage.html>_ for detailed instructions

Usage

.. code-block:: python

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 <https://github.com/sigma67/ytmusicapi/blob/master/tests/>_ are also a great source of usage examples.

.. end-features

Contributing

Pull requests are welcome. There are still some features that are not yet implemented. Please, refer to CONTRIBUTING.rst <https://github.com/sigma67/ytmusicapi/blob/master/CONTRIBUTING.rst>_ for guidance.

FAQs


Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc