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.4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | bfc58ccb84eff4b146bddb083f47795186f8ae70ea6b02e2e50df45e1827e765 |
|
MD5 | 706760fa2f78021da2b838c1ae1f1959 |
|
BLAKE2b-256 | bb0f34ebf549925dcc1402ac7fc7743cd3baeb3d45496c20790dce34bdc0bc9a |
Hashes for music_metadata_extractor-1.3.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5127de09827286a87713ee4e2ccecd8dc5f9bce52fe832e81d09b261ec3476ea |
|
MD5 | b2be93d5fa32db1fd8b8e4d54e015c23 |
|
BLAKE2b-256 | 03a0463d7fb61382075e4e7bf6215ddd82ddb39ab6e7bdbb8e7331763dcd7cef |