@@ -27,14 +27,8 @@ internal static class NLyricImpl {
27
27
private static AllCaches _allCaches ;
28
28
29
29
public static async Task ExecuteAsync ( Arguments arguments ) {
30
- for ( int i = 0 ; i < 3 ; i ++ )
31
- Logger . Instance . LogInfo ( "登录可避免出现大部分API错误!!!软件出错请尝试登录!!!" , ConsoleColor . Green ) ;
32
- Logger . Instance . LogInfo ( "重要的事情说3遍!!!" , ConsoleColor . Green ) ;
33
- Logger . Instance . LogNewLine ( ) ;
34
- Logger . Instance . LogInfo ( "程序会自动过滤相似度为0的结果与歌词未被收集的结果!!!" , ConsoleColor . Green ) ;
35
- Logger . Instance . LogNewLine ( ) ;
30
+ await LoginIfNeedAsync ( arguments ) ;
36
31
_allCachesPath = Path . Combine ( arguments . Directory , ".nlyric" ) ;
37
- await LoginIfNeedAsync ( ) ;
38
32
LoadLocalCaches ( ) ;
39
33
foreach ( string audioPath in Directory . EnumerateFiles ( arguments . Directory , "*" , SearchOption . AllDirectories ) ) {
40
34
string lrcPath ;
@@ -56,34 +50,21 @@ public static async Task ExecuteAsync(Arguments arguments) {
56
50
SaveLocalCaches ( ) ;
57
51
}
58
52
59
- private static async Task LoginIfNeedAsync ( ) {
60
- do {
61
- string userInput ;
62
-
63
- Logger . Instance . LogInfo ( "如果需要登录,请输入Y,反之输入N" ) ;
64
- userInput = Console . ReadLine ( ) . Trim ( ) . ToUpperInvariant ( ) ;
65
- if ( userInput == "Y" ) {
66
- string account ;
67
- string password ;
68
-
69
- Console . WriteLine ( "请输入账号" ) ;
70
- account = Console . ReadLine ( ) ;
71
- Console . WriteLine ( "请输入密码" ) ;
72
- password = Console . ReadLine ( ) ;
73
- if ( await CloudMusic . LoginAsync ( account , password ) ) {
74
- Logger . Instance . LogInfo ( "登录成功" , ConsoleColor . Green ) ;
75
- break ;
76
- }
77
- else {
78
- Logger . Instance . LogError ( "登录失败,请重试" ) ;
79
- Logger . Instance . LogNewLine ( ) ;
80
- }
53
+ private static async Task LoginIfNeedAsync ( Arguments arguments ) {
54
+ if ( string . IsNullOrEmpty ( arguments . Account ) || string . IsNullOrEmpty ( arguments . Password ) ) {
55
+ for ( int i = 0 ; i < 3 ; i ++ )
56
+ Logger . Instance . LogInfo ( "登录可避免出现大部分API错误!!!当前是免登录状态,若软件出错请尝试登录!!!" , ConsoleColor . Green ) ;
57
+ Logger . Instance . LogInfo ( "强烈建议登录使用软件:\" NLyric.exe -d C:\\ Music -a example@example.com -p 123456\" " , ConsoleColor . Green ) ;
58
+ }
59
+ else {
60
+ Logger . Instance . LogInfo ( "登录中..." , ConsoleColor . Green ) ;
61
+ if ( await CloudMusic . LoginAsync ( arguments . Account , arguments . Password ) )
62
+ Logger . Instance . LogInfo ( "登录成功!" , ConsoleColor . Green ) ;
63
+ else {
64
+ Logger . Instance . LogError ( "登录失败,输入任意键以免登录模式运行或重新运行尝试再次登录!" ) ;
65
+ Console . ReadKey ( ) ;
81
66
}
82
- else if ( userInput == "N" )
83
- break ;
84
- else
85
- Logger . Instance . LogWarning ( "输入有误,请重新输入!" ) ;
86
- } while ( true ) ;
67
+ }
87
68
Logger . Instance . LogNewLine ( ) ;
88
69
}
89
70
@@ -518,7 +499,7 @@ private static TSource Select<TSource, TTarget>(TSource[] sources, TTarget targe
518
499
519
500
if ( sources . Length == 0 )
520
501
return null ;
521
- Logger . Instance . LogInfo ( "请手动输入1,2,3...选择匹配的项,若不存在,请输入Pass 。" ) ;
502
+ Logger . Instance . LogInfo ( "请手动输入1,2,3...选择匹配的项,若不存在,请输入P 。" ) ;
522
503
Logger . Instance . LogInfo ( "对比项:" + TrackOrAlbumToString ( target ) ) ;
523
504
for ( int i = 0 ; i < sources . Length ; i ++ ) {
524
505
double nameSimilarity ;
@@ -539,7 +520,7 @@ private static TSource Select<TSource, TTarget>(TSource[] sources, TTarget targe
539
520
int index ;
540
521
541
522
userInput = Console . ReadLine ( ) . Trim ( ) ;
542
- if ( userInput . ToUpperInvariant ( ) == "PASS " )
523
+ if ( userInput . ToUpperInvariant ( ) == "P " )
543
524
break ;
544
525
if ( int . TryParse ( userInput , out index ) ) {
545
526
index -= 1 ;
0 commit comments