Metadata-Version: 2.4 Name: ytmusicapi Version: 1.11.0 Summary: Unofficial API for YouTube Music Author-email: sigma67 License: MIT License Copyright (c) 2024 sigma67 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Project-URL: homepage, https://github.com/sigma67/ytmusicapi Project-URL: documentation, https://ytmusicapi.readthedocs.io Project-URL: repository, https://github.com/sigma67/ytmusicapi Classifier: Programming Language :: Python :: 3 Classifier: License :: OSI Approved :: MIT License Requires-Python: >=3.10 Description-Content-Type: text/x-rst License-File: LICENSE Requires-Dist: requests>=2.22 Dynamic: license-file ytmusicapi: Unofficial API for YouTube Music ############################################ .. |pypi-downloads| image:: https://img.shields.io/pypi/dm/ytmusicapi?style=flat-square :alt: PyPI Downloads :target: https://pypi.org/project/ytmusicapi/ .. |gitter| image:: https://badges.gitter.im/sigma67/ytmusicapi.svg :alt: Ask questions at https://gitter.im/sigma67/ytmusicapi :target: https://gitter.im/sigma67/ytmusicapi .. |code-coverage| image:: https://img.shields.io/codecov/c/github/sigma67/ytmusicapi?style=flat-square :alt: Code coverage :target: https://codecov.io/gh/sigma67/ytmusicapi .. |latest-release| image:: https://img.shields.io/github/v/release/sigma67/ytmusicapi?style=flat-square :alt: Latest release :target: https://github.com/sigma67/ytmusicapi/releases/latest .. |commits-since-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 |pypi-downloads| |gitter| |code-coverage| |latest-release| |commits-since-latest| 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 `__ * 16 languages are supported (see `languages FAQ `__ If you find something missing or broken, check the `FAQ `__ or feel free to create an `issue `__. Requirements ------------ - Python 3.10 or higher - https://www.python.org Setup ----- See the `Documentation `_ 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 `_ 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 `_ for guidance.