Apply suggestions from code review
このコミットが含まれているのは:
コミット
7006adc2f6
|
@ -7,7 +7,6 @@ from subprocess import call
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import List
|
from typing import List
|
||||||
|
|
||||||
# sys.path.append('../yandex-music-api/')
|
|
||||||
from yandex_music import Client
|
from yandex_music import Client
|
||||||
|
|
||||||
DEFAULT_CACHE_FOLDER = Path(__file__).resolve().parent / '.YMcache'
|
DEFAULT_CACHE_FOLDER = Path(__file__).resolve().parent / '.YMcache'
|
||||||
|
@ -16,11 +15,7 @@ MAX_ERRORS = 3
|
||||||
|
|
||||||
parser = argparse.ArgumentParser()
|
parser = argparse.ArgumentParser()
|
||||||
parser.add_argument('playlist', choices=('likes', 'user'), help='playlist type')
|
parser.add_argument('playlist', choices=('likes', 'user'), help='playlist type')
|
||||||
# sub_parser = parser.add_subparsers(title='playlist type',
|
parser.add_argument('--playlist-name',
|
||||||
# dest='playlist', required=True)
|
|
||||||
# sub_parser.add_parser('likes')
|
|
||||||
# user_parser = sub_parser.add_parser('user')
|
|
||||||
parser.add_argument('--playlist-name', # required=True,
|
|
||||||
help='name of user playlist')
|
help='name of user playlist')
|
||||||
|
|
||||||
parser.add_argument('--skip', metavar='N', type=int,
|
parser.add_argument('--skip', metavar='N', type=int,
|
||||||
|
@ -54,7 +49,6 @@ if args.print_args:
|
||||||
if type(args.token) is str and re.match(r'^[A-z0-9]{39}$', args.token):
|
if type(args.token) is str and re.match(r'^[A-z0-9]{39}$', args.token):
|
||||||
if not args.no_save_token:
|
if not args.no_save_token:
|
||||||
parser.get_default('token').write_text(args.token)
|
parser.get_default('token').write_text(args.token)
|
||||||
pass
|
|
||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
args.token = Path(args.token).read_text()
|
args.token = Path(args.token).read_text()
|
||||||
|
@ -74,6 +68,9 @@ if args.playlist == 'user':
|
||||||
print('specify --playlist-name', list(p.title for p in user_playlists))
|
print('specify --playlist-name', list(p.title for p in user_playlists))
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
playlist = next(p for p in user_playlists if p.title == args.playlist_name)
|
playlist = next(p for p in user_playlists if p.title == args.playlist_name)
|
||||||
|
if playlist == None:
|
||||||
|
print(f'playlist "{args.playlist_name}" not found')
|
||||||
|
sys.exit(1)
|
||||||
total_tracks = playlist.track_count
|
total_tracks = playlist.track_count
|
||||||
print(f'Playing {playlist.title} ({playlist.playlist_id}). {total_tracks} track(s).')
|
print(f'Playing {playlist.title} ({playlist.playlist_id}). {total_tracks} track(s).')
|
||||||
tracks = playlist.tracks if playlist.tracks else playlist.fetch_tracks()
|
tracks = playlist.tracks if playlist.tracks else playlist.fetch_tracks()
|
||||||
|
@ -95,9 +92,9 @@ for (i, short_track) in enumerate(tracks):
|
||||||
try:
|
try:
|
||||||
track = short_track.track if short_track.track else short_track.fetchTrack()
|
track = short_track.track if short_track.track else short_track.fetchTrack()
|
||||||
|
|
||||||
print(f'Now playing {i + 1}/{total_tracks}:',
|
print(f'Now playing {i + 1}/{total_tracks}: ', end='')
|
||||||
'|'.join(a.name for a in track.artists),
|
print('|'.join(a.name for a in track.artists), end='')
|
||||||
f"[{'|'.join(a.title for a in track.albums)}]", '~', track.title)
|
print(f" [{'|'.join(a.title for a in track.albums)}]", '~', track.title)
|
||||||
|
|
||||||
artist_dir = Path(f'{track.artists[0].name}_{track.artists[0].id}')
|
artist_dir = Path(f'{track.artists[0].name}_{track.artists[0].id}')
|
||||||
album_dir = Path(f'{track.albums[0].title}_{track.albums[0].id}')
|
album_dir = Path(f'{track.albums[0].title}_{track.albums[0].id}')
|
||||||
|
@ -116,7 +113,6 @@ for (i, short_track) in enumerate(tracks):
|
||||||
error_count += 1
|
error_count += 1
|
||||||
sleep(1)
|
sleep(1)
|
||||||
|
|
||||||
|
|
||||||
player_cmd[-1] = file_path
|
player_cmd[-1] = file_path
|
||||||
if call(player_cmd) == 0:
|
if call(player_cmd) == 0:
|
||||||
error_count = 0
|
error_count = 0
|
||||||
|
@ -125,6 +121,5 @@ for (i, short_track) in enumerate(tracks):
|
||||||
break
|
break
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print('Error:', e)
|
print('Error:', e)
|
||||||
# sys.exc_info()
|
|
||||||
error_count += 1
|
error_count += 1
|
||||||
sleep(1)
|
sleep(1)
|
||||||
|
|
読み込み中…
新しいイシューから参照