From 5ecff9639b4425f2636abe86a03c32c698b87af6 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Tue, 20 Jun 2023 10:09:17 +0000 Subject: automatic import of python-shazamio --- python-shazamio.spec | 963 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 963 insertions(+) create mode 100644 python-shazamio.spec (limited to 'python-shazamio.spec') diff --git a/python-shazamio.spec b/python-shazamio.spec new file mode 100644 index 0000000..c62c2e3 --- /dev/null +++ b/python-shazamio.spec @@ -0,0 +1,963 @@ +%global _empty_manifest_terminate_build 0 +Name: python-shazamio +Version: 0.4.0.1 +Release: 1 +Summary: Is a asynchronous framework from reverse engineered Shazam API written in Python 3.8+ with asyncio and aiohttp. +License: MIT +URL: https://github.com/dotX12/ShazamIO +Source0: https://mirrors.aliyun.com/pypi/web/packages/2d/9a/a0d12348cba3cd4856a5beb0b073f767c7ab31e7d46d957115da5c2c9f73/shazamio-0.4.0.1.tar.gz +BuildArch: noarch + +Requires: python3-numpy +Requires: python3-aiohttp +Requires: python3-pydub +Requires: python3-dataclass-factory +Requires: python3-aiofiles +Requires: python3-pytest +Requires: python3-pytest-asyncio +Requires: python3-anyio +Requires: python3-pydantic + +%description +

+## πŸ’Ώ Installation +``` +πŸ’² pip install shazamio +``` +## πŸ’» Example +
+ +πŸ”ŽπŸŽ΅ Recognize track + +Recognize a track based on a file
+ ```python3 +import asyncio +from shazamio import Shazam +async def main(): + shazam = Shazam() + out = await shazam.recognize_song('dora.ogg') + print(out) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ‘¨β€πŸŽ€ About artist + +Retrieving information from an artist profile
+https://www.shazam.com/artist/43328183/nathan-evans + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + artist_id = 43328183 + about_artist = await shazam.artist_about(artist_id) + serialized = Serialize.artist(about_artist) + print(about_artist) # dict + print(serialized) # serialized from dataclass factory +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸŽ΅πŸ“„ About track + +Get track information
+https://www.shazam.com/track/552406075/ale-jazz + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + track_id = 552406075 + about_track = await shazam.track_about(track_id=track_id) + serialized = Serialize.track(data=about_track) + print(about_track) # dict + print(serialized) # serialized from dataclass factory +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸŽ΅βŒ› Track listenings count + +Returns the number of times a particular song has been played
+https://www.shazam.com/track/559284007/rampampam + ```python3 +import asyncio +from shazamio import Shazam +async def main(): + # Example: https://www.shazam.com/track/559284007/rampampam + shazam = Shazam() + track_id = 559284007 + count = await shazam.listening_counter(track_id=track_id) + print(count) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸŽΆπŸ’¬ Similar songs + +Similar songs based song id
+https://www.shazam.com/track/546891609/2-phu%CC%81t-ho%CC%9Bn-kaiz-remix + ```python3 +import asyncio +from shazamio import Shazam +async def main(): + shazam = Shazam() + track_id = 546891609 + related = await shazam.related_tracks(track_id=track_id, limit=5, offset=2) + # ONLY β„–3, β„–4 SONG + print(related) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”ŽπŸ‘¨β€πŸŽ€ Search artists + +Search all artists by prefix
+ ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + artists = await shazam.search_artist(query='Lil', limit=5) + for artist in artists['artists']['hits']: + serialized = Serialize.artist(data=artist) + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”ŽπŸŽΆ Search tracks + +Search all tracks by prefix
+ ```python3 +import asyncio +from shazamio import Shazam +async def main(): + shazam = Shazam() + tracks = await shazam.search_track(query='Lil', limit=5) + print(tracks) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ‘¨β€πŸŽ€ Top artist tracks + +Get the top songs according to Shazam
+https://www.shazam.com/artist/201896832/kizaru + ```python3 +import asyncio +from shazamio import Shazam, Serialize +from shazamio.schemas.artists import ArtistQuery +from shazamio.schemas.enums import ArtistView +async def main(): + shazam = Shazam() + artist_id = 1081606072 + about_artist = await shazam.artist_about( + artist_id, + query=ArtistQuery( + views=[ + ArtistView.TOP_SONGS, + ], + ), + ) + serialized = Serialize.artist_v2(about_artist) + for i in serialized.data[0].views.top_songs.data: + print(i.attributes.name) +loop = asyncio.get_event_loop_policy().get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ™οΈ Top tracks in city + +Retrieving information from an artist profile
+https://www.shazam.com/charts/top-50/russia/moscow + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_ten_moscow_tracks = await shazam.top_city_tracks(country_code='RU', city_name='Moscow', limit=10) + print(top_ten_moscow_tracks) + # ALL TRACKS DICT + for track in top_ten_moscow_tracks['tracks']: + serialized = Serialize.track(data=track) + # SERIALIZE FROM DATACLASS FACTORY + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ³οΈβ€πŸŒˆ Top tracks in country + +Get the best tracks by country code
+https://www.shazam.com/charts/discovery/netherlands + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_five_track_from_amsterdam = await shazam.top_country_tracks('NL', 5) + for track in top_five_track_from_amsterdam['tracks']: + serialized = Serialize.track(data=track) + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ³οΈβ€πŸŒˆπŸŽΈ Top tracks in country by genre + +The best tracks by a genre in the country
+https://www.shazam.com/charts/genre/spain/hip-hop-rap + ```python3 +import asyncio +from shazamio import Shazam, GenreMusic +async def main(): + shazam = Shazam() + top_spain_rap = await shazam.top_country_genre_tracks( + country_code='ES', + genre=GenreMusic.HIP_HOP_RAP, + limit=4 + ) + print(top_spain_rap) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸŒπŸŽΈ Top tracks in word by genre + +Get world tracks by certain genre
+https://www.shazam.com/charts/genre/world/rock + ```python3 +import asyncio +from shazamio import Shazam, Serialize, GenreMusic +async def main(): + shazam = Shazam() + top_rock_in_the_world = await shazam.top_world_genre_tracks(genre=GenreMusic.ROCK, limit=10) + for track in top_rock_in_the_world['tracks']: + serialized_track = Serialize.track(data=track) + print(serialized_track.spotify_url) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸŒTop tracks in word + +Get the best tracks from all over the world
+https://www.shazam.com/charts/top-200/world + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_world_tracks = await shazam.top_world_tracks(limit=10) + print(top_world_tracks) + for track in top_world_tracks['tracks']: + serialized = Serialize.track(track) + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+## How to use data serialization +
+ +Open Code + + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_five_track_from_amsterdam = await shazam.top_country_tracks('NL', 5) + for track in top_five_track_from_amsterdam['tracks']: + serialized = Serialize.track(data=track) + print(serialized.title) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +Open photo: What song information looks like (Dict) + + +
+
+ +Open photo: what song information looks like (Custom serializer) + + +
+Agree, thanks to the serializer, you no longer need to manually select the necessary data from the dictionary. Now the serializer contains the most necessary information about an artist or a track. + +%package -n python3-shazamio +Summary: Is a asynchronous framework from reverse engineered Shazam API written in Python 3.8+ with asyncio and aiohttp. +Provides: python-shazamio +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-shazamio +

+## πŸ’Ώ Installation +``` +πŸ’² pip install shazamio +``` +## πŸ’» Example +
+ +πŸ”ŽπŸŽ΅ Recognize track + +Recognize a track based on a file
+ ```python3 +import asyncio +from shazamio import Shazam +async def main(): + shazam = Shazam() + out = await shazam.recognize_song('dora.ogg') + print(out) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ‘¨β€πŸŽ€ About artist + +Retrieving information from an artist profile
+https://www.shazam.com/artist/43328183/nathan-evans + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + artist_id = 43328183 + about_artist = await shazam.artist_about(artist_id) + serialized = Serialize.artist(about_artist) + print(about_artist) # dict + print(serialized) # serialized from dataclass factory +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸŽ΅πŸ“„ About track + +Get track information
+https://www.shazam.com/track/552406075/ale-jazz + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + track_id = 552406075 + about_track = await shazam.track_about(track_id=track_id) + serialized = Serialize.track(data=about_track) + print(about_track) # dict + print(serialized) # serialized from dataclass factory +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸŽ΅βŒ› Track listenings count + +Returns the number of times a particular song has been played
+https://www.shazam.com/track/559284007/rampampam + ```python3 +import asyncio +from shazamio import Shazam +async def main(): + # Example: https://www.shazam.com/track/559284007/rampampam + shazam = Shazam() + track_id = 559284007 + count = await shazam.listening_counter(track_id=track_id) + print(count) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸŽΆπŸ’¬ Similar songs + +Similar songs based song id
+https://www.shazam.com/track/546891609/2-phu%CC%81t-ho%CC%9Bn-kaiz-remix + ```python3 +import asyncio +from shazamio import Shazam +async def main(): + shazam = Shazam() + track_id = 546891609 + related = await shazam.related_tracks(track_id=track_id, limit=5, offset=2) + # ONLY β„–3, β„–4 SONG + print(related) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”ŽπŸ‘¨β€πŸŽ€ Search artists + +Search all artists by prefix
+ ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + artists = await shazam.search_artist(query='Lil', limit=5) + for artist in artists['artists']['hits']: + serialized = Serialize.artist(data=artist) + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”ŽπŸŽΆ Search tracks + +Search all tracks by prefix
+ ```python3 +import asyncio +from shazamio import Shazam +async def main(): + shazam = Shazam() + tracks = await shazam.search_track(query='Lil', limit=5) + print(tracks) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ‘¨β€πŸŽ€ Top artist tracks + +Get the top songs according to Shazam
+https://www.shazam.com/artist/201896832/kizaru + ```python3 +import asyncio +from shazamio import Shazam, Serialize +from shazamio.schemas.artists import ArtistQuery +from shazamio.schemas.enums import ArtistView +async def main(): + shazam = Shazam() + artist_id = 1081606072 + about_artist = await shazam.artist_about( + artist_id, + query=ArtistQuery( + views=[ + ArtistView.TOP_SONGS, + ], + ), + ) + serialized = Serialize.artist_v2(about_artist) + for i in serialized.data[0].views.top_songs.data: + print(i.attributes.name) +loop = asyncio.get_event_loop_policy().get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ™οΈ Top tracks in city + +Retrieving information from an artist profile
+https://www.shazam.com/charts/top-50/russia/moscow + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_ten_moscow_tracks = await shazam.top_city_tracks(country_code='RU', city_name='Moscow', limit=10) + print(top_ten_moscow_tracks) + # ALL TRACKS DICT + for track in top_ten_moscow_tracks['tracks']: + serialized = Serialize.track(data=track) + # SERIALIZE FROM DATACLASS FACTORY + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ³οΈβ€πŸŒˆ Top tracks in country + +Get the best tracks by country code
+https://www.shazam.com/charts/discovery/netherlands + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_five_track_from_amsterdam = await shazam.top_country_tracks('NL', 5) + for track in top_five_track_from_amsterdam['tracks']: + serialized = Serialize.track(data=track) + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ³οΈβ€πŸŒˆπŸŽΈ Top tracks in country by genre + +The best tracks by a genre in the country
+https://www.shazam.com/charts/genre/spain/hip-hop-rap + ```python3 +import asyncio +from shazamio import Shazam, GenreMusic +async def main(): + shazam = Shazam() + top_spain_rap = await shazam.top_country_genre_tracks( + country_code='ES', + genre=GenreMusic.HIP_HOP_RAP, + limit=4 + ) + print(top_spain_rap) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸŒπŸŽΈ Top tracks in word by genre + +Get world tracks by certain genre
+https://www.shazam.com/charts/genre/world/rock + ```python3 +import asyncio +from shazamio import Shazam, Serialize, GenreMusic +async def main(): + shazam = Shazam() + top_rock_in_the_world = await shazam.top_world_genre_tracks(genre=GenreMusic.ROCK, limit=10) + for track in top_rock_in_the_world['tracks']: + serialized_track = Serialize.track(data=track) + print(serialized_track.spotify_url) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸŒTop tracks in word + +Get the best tracks from all over the world
+https://www.shazam.com/charts/top-200/world + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_world_tracks = await shazam.top_world_tracks(limit=10) + print(top_world_tracks) + for track in top_world_tracks['tracks']: + serialized = Serialize.track(track) + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+## How to use data serialization +
+ +Open Code + + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_five_track_from_amsterdam = await shazam.top_country_tracks('NL', 5) + for track in top_five_track_from_amsterdam['tracks']: + serialized = Serialize.track(data=track) + print(serialized.title) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +Open photo: What song information looks like (Dict) + + +
+
+ +Open photo: what song information looks like (Custom serializer) + + +
+Agree, thanks to the serializer, you no longer need to manually select the necessary data from the dictionary. Now the serializer contains the most necessary information about an artist or a track. + +%package help +Summary: Development documents and examples for shazamio +Provides: python3-shazamio-doc +%description help +

+## πŸ’Ώ Installation +``` +πŸ’² pip install shazamio +``` +## πŸ’» Example +
+ +πŸ”ŽπŸŽ΅ Recognize track + +Recognize a track based on a file
+ ```python3 +import asyncio +from shazamio import Shazam +async def main(): + shazam = Shazam() + out = await shazam.recognize_song('dora.ogg') + print(out) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ‘¨β€πŸŽ€ About artist + +Retrieving information from an artist profile
+https://www.shazam.com/artist/43328183/nathan-evans + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + artist_id = 43328183 + about_artist = await shazam.artist_about(artist_id) + serialized = Serialize.artist(about_artist) + print(about_artist) # dict + print(serialized) # serialized from dataclass factory +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸŽ΅πŸ“„ About track + +Get track information
+https://www.shazam.com/track/552406075/ale-jazz + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + track_id = 552406075 + about_track = await shazam.track_about(track_id=track_id) + serialized = Serialize.track(data=about_track) + print(about_track) # dict + print(serialized) # serialized from dataclass factory +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸŽ΅βŒ› Track listenings count + +Returns the number of times a particular song has been played
+https://www.shazam.com/track/559284007/rampampam + ```python3 +import asyncio +from shazamio import Shazam +async def main(): + # Example: https://www.shazam.com/track/559284007/rampampam + shazam = Shazam() + track_id = 559284007 + count = await shazam.listening_counter(track_id=track_id) + print(count) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸŽΆπŸ’¬ Similar songs + +Similar songs based song id
+https://www.shazam.com/track/546891609/2-phu%CC%81t-ho%CC%9Bn-kaiz-remix + ```python3 +import asyncio +from shazamio import Shazam +async def main(): + shazam = Shazam() + track_id = 546891609 + related = await shazam.related_tracks(track_id=track_id, limit=5, offset=2) + # ONLY β„–3, β„–4 SONG + print(related) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”ŽπŸ‘¨β€πŸŽ€ Search artists + +Search all artists by prefix
+ ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + artists = await shazam.search_artist(query='Lil', limit=5) + for artist in artists['artists']['hits']: + serialized = Serialize.artist(data=artist) + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”ŽπŸŽΆ Search tracks + +Search all tracks by prefix
+ ```python3 +import asyncio +from shazamio import Shazam +async def main(): + shazam = Shazam() + tracks = await shazam.search_track(query='Lil', limit=5) + print(tracks) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ‘¨β€πŸŽ€ Top artist tracks + +Get the top songs according to Shazam
+https://www.shazam.com/artist/201896832/kizaru + ```python3 +import asyncio +from shazamio import Shazam, Serialize +from shazamio.schemas.artists import ArtistQuery +from shazamio.schemas.enums import ArtistView +async def main(): + shazam = Shazam() + artist_id = 1081606072 + about_artist = await shazam.artist_about( + artist_id, + query=ArtistQuery( + views=[ + ArtistView.TOP_SONGS, + ], + ), + ) + serialized = Serialize.artist_v2(about_artist) + for i in serialized.data[0].views.top_songs.data: + print(i.attributes.name) +loop = asyncio.get_event_loop_policy().get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ™οΈ Top tracks in city + +Retrieving information from an artist profile
+https://www.shazam.com/charts/top-50/russia/moscow + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_ten_moscow_tracks = await shazam.top_city_tracks(country_code='RU', city_name='Moscow', limit=10) + print(top_ten_moscow_tracks) + # ALL TRACKS DICT + for track in top_ten_moscow_tracks['tracks']: + serialized = Serialize.track(data=track) + # SERIALIZE FROM DATACLASS FACTORY + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ³οΈβ€πŸŒˆ Top tracks in country + +Get the best tracks by country code
+https://www.shazam.com/charts/discovery/netherlands + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_five_track_from_amsterdam = await shazam.top_country_tracks('NL', 5) + for track in top_five_track_from_amsterdam['tracks']: + serialized = Serialize.track(data=track) + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸ³οΈβ€πŸŒˆπŸŽΈ Top tracks in country by genre + +The best tracks by a genre in the country
+https://www.shazam.com/charts/genre/spain/hip-hop-rap + ```python3 +import asyncio +from shazamio import Shazam, GenreMusic +async def main(): + shazam = Shazam() + top_spain_rap = await shazam.top_country_genre_tracks( + country_code='ES', + genre=GenreMusic.HIP_HOP_RAP, + limit=4 + ) + print(top_spain_rap) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸŒπŸŽΈ Top tracks in word by genre + +Get world tracks by certain genre
+https://www.shazam.com/charts/genre/world/rock + ```python3 +import asyncio +from shazamio import Shazam, Serialize, GenreMusic +async def main(): + shazam = Shazam() + top_rock_in_the_world = await shazam.top_world_genre_tracks(genre=GenreMusic.ROCK, limit=10) + for track in top_rock_in_the_world['tracks']: + serialized_track = Serialize.track(data=track) + print(serialized_track.spotify_url) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +πŸ”πŸŽΆπŸŒTop tracks in word + +Get the best tracks from all over the world
+https://www.shazam.com/charts/top-200/world + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_world_tracks = await shazam.top_world_tracks(limit=10) + print(top_world_tracks) + for track in top_world_tracks['tracks']: + serialized = Serialize.track(track) + print(serialized) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+## How to use data serialization +
+ +Open Code + + ```python3 +import asyncio +from shazamio import Shazam, Serialize +async def main(): + shazam = Shazam() + top_five_track_from_amsterdam = await shazam.top_country_tracks('NL', 5) + for track in top_five_track_from_amsterdam['tracks']: + serialized = Serialize.track(data=track) + print(serialized.title) +loop = asyncio.get_event_loop() +loop.run_until_complete(main()) + ``` +
+
+ +Open photo: What song information looks like (Dict) + + +
+
+ +Open photo: what song information looks like (Custom serializer) + + +
+Agree, thanks to the serializer, you no longer need to manually select the necessary data from the dictionary. Now the serializer contains the most necessary information about an artist or a track. + +%prep +%autosetup -n shazamio-0.4.0.1 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-shazamio -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Jun 20 2023 Python_Bot - 0.4.0.1-1 +- Package Spec generated -- cgit v1.2.3