mirror of
https://github.com/nathom/streamrip.git
synced 2025-05-16 16:14:49 -04:00
Increase Deezer track limit; #63
This commit is contained in:
parent
d6830adcda
commit
4518944efc
1 changed files with 12 additions and 4 deletions
|
@ -1,4 +1,5 @@
|
||||||
import base64
|
import base64
|
||||||
|
from pprint import pprint
|
||||||
import hashlib
|
import hashlib
|
||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
|
@ -418,11 +419,11 @@ class DeezerClient(Client):
|
||||||
:param limit:
|
:param limit:
|
||||||
:type limit: int
|
:type limit: int
|
||||||
"""
|
"""
|
||||||
# TODO: more robust url sanitize
|
|
||||||
query = query.replace(" ", "+")
|
|
||||||
|
|
||||||
# TODO: use limit parameter
|
# TODO: use limit parameter
|
||||||
response = self.session.get(f"{DEEZER_BASE}/search/{media_type}?q={query}")
|
response = self.session.get(
|
||||||
|
f"{DEEZER_BASE}/search/{media_type}", params={"q": query}
|
||||||
|
)
|
||||||
response.raise_for_status()
|
response.raise_for_status()
|
||||||
|
|
||||||
return response.json()
|
return response.json()
|
||||||
|
@ -441,7 +442,7 @@ class DeezerClient(Client):
|
||||||
url = f"{DEEZER_BASE}/{media_type}/{meta_id}"
|
url = f"{DEEZER_BASE}/{media_type}/{meta_id}"
|
||||||
item = self.session.get(url).json()
|
item = self.session.get(url).json()
|
||||||
if media_type in ("album", "playlist"):
|
if media_type in ("album", "playlist"):
|
||||||
tracks = self.session.get(f"{url}/tracks").json()
|
tracks = self.session.get(f"{url}/tracks", params={"limit": 1000}).json()
|
||||||
item["tracks"] = tracks["data"]
|
item["tracks"] = tracks["data"]
|
||||||
item["track_total"] = len(tracks["data"])
|
item["track_total"] = len(tracks["data"])
|
||||||
elif media_type == "artist":
|
elif media_type == "artist":
|
||||||
|
@ -452,6 +453,13 @@ class DeezerClient(Client):
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_file_url(meta_id: Union[str, int], quality: int = 6):
|
def get_file_url(meta_id: Union[str, int], quality: int = 6):
|
||||||
|
"""Get downloadable url for a track.
|
||||||
|
|
||||||
|
:param meta_id: The track ID.
|
||||||
|
:type meta_id: Union[str, int]
|
||||||
|
:param quality:
|
||||||
|
:type quality: int
|
||||||
|
"""
|
||||||
quality = min(DEEZER_MAX_Q, quality)
|
quality = min(DEEZER_MAX_Q, quality)
|
||||||
url = f"{DEEZER_DL}/{get_quality(quality, 'deezer')}/{DEEZER_BASE}/track/{meta_id}"
|
url = f"{DEEZER_DL}/{get_quality(quality, 'deezer')}/{DEEZER_BASE}/track/{meta_id}"
|
||||||
logger.debug(f"Download url {url}")
|
logger.debug(f"Download url {url}")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue