semi finished the fetching of download links from musify

This commit is contained in:
Lars Noack
2022-10-17 15:49:20 +02:00
parent 95effbc878
commit 9f96b97328
5 changed files with 423 additions and 136 deletions

View File

@@ -13,9 +13,11 @@ class Download:
}
self.metadata = pd.read_csv(metadata_csv, index_col=0)
print(self.metadata)
self.urls = []
missing_urls, self.urls = self.check_musify()
self.check_musify()
self.dump_urls()
def check_musify_track(self, row):
artist = row['artist']
@@ -27,16 +29,37 @@ class Download:
if r.status_code == 200:
autocomplete = r.json()
for row in autocomplete:
print(artist, row['label'], artist in row['label'])
if artist in row['label']:
print(row)
break
if any(a in row['label'] for a in artist):
return row
return None
def check_musify(self, urls: list = []):
missing_urls = []
def get_download_link(default_url):
# https://musify.club/track/dl/18567672/rauw-alejandro-te-felicito-feat-shakira.mp3
# /track/sundenklang-wenn-mein-herz-schreit-3883217'
file_ = default_url.split("/")[-1]
musify_id = file_.split("-")[-1]
musify_name = "-".join(file_.split("-")[:-1])
return f"https://musify.club/track/dl/{musify_id}/{musify_name}.mp3"
def check_musify(self):
for idx, row in self.metadata.iterrows():
url = self.check_musify_track(row)
break
if url is None:
missing_urls.append(row['id'])
continue
urls.append({'id':row['id'], 'url': get_download_link(url['url'])})
return missing_urls, urls
def dump_urls(self):
df = pd.DataFrame(self.urls)
df.to_csv(".download_links.csv")
if __name__ == "__main__":
download = Download()