improved filter count tracks

This commit is contained in:
localhost_frssoft 2024-07-25 17:52:15 +03:00
parent 92a52dd2b8
commit a9b3fddffe

View file

@ -40,7 +40,6 @@ def filter_tracks(tracks):
except: except:
return 0 return 0
with concurrent.futures.ThreadPoolExecutor(max_workers=50) as executor: with concurrent.futures.ThreadPoolExecutor(max_workers=50) as executor:
before = len(tracks)
res = [executor.submit(remove_unreach_tracks, track) for track in tracks] res = [executor.submit(remove_unreach_tracks, track) for track in tracks]
concurrent.futures.wait(res) concurrent.futures.wait(res)
avalaible = [] avalaible = []
@ -49,8 +48,6 @@ def filter_tracks(tracks):
if is_avalaible == 1: if is_avalaible == 1:
avalaible.append(track) avalaible.append(track)
tracks = avalaible tracks = avalaible
after = before - len(tracks)
print(f'-{after} unreach tracks')
Path('filter_tags').touch() Path('filter_tags').touch()
Path('filter_artists').touch() Path('filter_artists').touch()
@ -63,7 +60,7 @@ def filter_tracks(tracks):
with open('filter_raw_urls') as raw_urls_file: with open('filter_raw_urls') as raw_urls_file:
block_raw_urls = raw_urls_file.read().strip().split('\n') block_raw_urls = raw_urls_file.read().strip().split('\n')
filtred_tracks = []
for i in tracks: for i in tracks:
if [tag.lower() for tag in i['tags']] in block_tags: if [tag.lower() for tag in i['tags']] in block_tags:
continue continue
@ -71,7 +68,8 @@ def filter_tracks(tracks):
continue continue
if i['listen_url'].lower() in block_raw_urls: if i['listen_url'].lower() in block_raw_urls:
continue continue
tracks_stor.append(i) filtred_tracks.append(i)
return filtred_tracks
@ -111,7 +109,11 @@ with concurrent.futures.ThreadPoolExecutor(max_workers=50) as executor:
for idx, instance in enumerate(instances): for idx, instance in enumerate(instances):
try: try:
tracks = res[idx].result() tracks = res[idx].result()
filter_tracks(tracks['results']) before_filter = len(tracks['results'])
filtred_tracks = filter_tracks(tracks['results'])
after_filter = before_filter - len(filtred_tracks)
print(f'{after_filter} tracks filtred on {instance}')
tracks_stor = filtred_tracks
except Exception as E: except Exception as E:
print(E) print(E)
for track in tracks_stor: for track in tracks_stor: