Fetch music metadata from common Music APIs for a variety of data sources
Project description
metadata-extractor
Package to fetch music metadata from common Music APIs from a variety of data sources.
Currently, YouTube, YouTube Music and Spotify links are supported and data is fetched from Spotify APIs.
Installation
pip install music-metadata-extractor
Ensure that the .env
file for your project has all the environment variables defined in .env.template
.
SPOTIPY_CLIENT_ID
and SPOTIPY_CLIENT_SECRET
can be obtained by creating a new app on the Spotify Developer Dashboard.
Similarly, you can get GOOGLE_APPLICATION_CREDENTIALS
by creating a new project on the Google Developer Console. Enable the YouTube Data API
and create credentials. Use the API key you get in the GOOGLE_APPLICATION_CREDENTIALS
.
Usage
Example
from music_metadata_extractor import SongData
data = SongData("https://www.youtube.com/watch?v=xwtdhWltSIg")
print(data)
The output is in the format
<SongData(
track=<Track(provider_id=31AOj9sFz2gM0O3hMARRBx, name=Losing My Religion, is_cover=False, original_id=None,popularity=82, year=1991-03-12, explicit=False, image_id=https://i.scdn.co/image/ab67616d0000b273e2dd4e821bcc3f70dc0c8ffd, genres=[])>,
artists=[<Artist(provider_id=4KWTAlx2RvbpseOGMEmROg, name=R.E.M., image_id=https://i.scdn.co/image/d24ff8fbfd6688b345a5d53acff032d2ac1ff387, genres=['alternative rock', 'classic rock', 'permanent wave', 'pop rock', 'rock'])>],
extraAttrs={'youtube': {'title': 'R.E.M. - Losing My Religion (Official Music Video)', 'views': '770535535', 'posted_date': datetime.datetime(2011, 7, 2, 0, 30, 31, tzinfo=tzutc()), 'converted_link': 'https://www.youtube.com/watch?v=xwtdhWltSIg'}}
)>
music.youtube.com/watch
links and open.spotify.com/track/
are also supported as inputs to SongData
.
YouTube Music and Spotify links are converted to their equivalent YouTube links and returned in the converted_link
field of the extraAttrs
attribute.
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
Built Distribution
Hashes for music_metadata_extractor-1.3.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcaaae162f0528dda5d30af2c1317b5f79785884ab800bc26ad2c4f4a01775c1 |
|
MD5 | e23c481dbdaddf16a8879421f53ebc2d |
|
BLAKE2b-256 | c2ecce8ca2c4c257d2309c77c99f4bea95b21c731a9b0e61c6565d046dfe96ab |
Hashes for music_metadata_extractor-1.3.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6a401288cc5583f56aad802d3a4b7be933726a061d489a01456ca240fecc3efd |
|
MD5 | 329fa597df775fd311d2ba8daef90a1d |
|
BLAKE2b-256 | 029d2a30ef20d0c577758def29d51f26dc6d408b098f5d89023b5b34a8f4a690 |