diff --git a/src/Service/Jobs/ChineseNfoRegistry.cs b/src/Service/Jobs/ChineseNfoRegistry.cs index 808834c..7c8619b 100644 --- a/src/Service/Jobs/ChineseNfoRegistry.cs +++ b/src/Service/Jobs/ChineseNfoRegistry.cs @@ -94,14 +94,26 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry foreach (var tv in tvNfos) { - await HandleTv(tv); - + try + { + await HandleTv(tv); + } + catch (Exception e) + { + _logger.LogError(e, "ChineseNfoRegistry.Job() HandleTv() error"); + } var seasonNfos = Directory.GetFiles(Path.GetDirectoryName(tv) ?? string.Empty, "season.nfo", SearchOption.AllDirectories); foreach (var season in seasonNfos) { - await HandleSeason(tv, season); - + try + { + await HandleSeason(tv, season); + } + catch (Exception e) + { + _logger.LogError(e, "ChineseNfoRegistry.Job() HandleSeason() error"); + } var episodeNfos = Directory .GetFiles(Path.GetDirectoryName(season) ?? string.Empty, "*.nfo", SearchOption.AllDirectories) .Where(x => !x.EndsWith("season.nfo")) @@ -109,7 +121,14 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry foreach (var episode in episodeNfos) { - await HandleEpisode(tv, season, episode); + try + { + await HandleEpisode(tv, season, episode); + } + catch (Exception e) + { + _logger.LogError(e, "ChineseNfoRegistry.Job() episodeNfo is null or empty"); + } } } } @@ -173,6 +192,8 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry { sorttitleNode.InnerXml = $""; } + + _logger.LogInformation("ChineseNfoRegistry.Job() tvInfo: {tvInfo}", tvInfo["name"]); } if (tvInfo["overview"] != null) @@ -188,6 +209,8 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry { outlineNode.InnerXml = $""; } + + _logger.LogInformation("ChineseNfoRegistry.Job() tvInfo: {tvInfo}", tvInfo["overview"]); } if (tvInfo["poster_path"] != null) @@ -220,7 +243,10 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry { tvXml.CreateElement("locked"); isLockedNode = tvXml.SelectSingleNode("//locked"); - isLockedNode!.InnerText = "true"; + if (isLockedNode != null) + { + isLockedNode.InnerText = "true"; + } } if (isCompletedNode != null) @@ -231,7 +257,10 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry { tvXml.CreateElement("completed"); isCompletedNode = tvXml.SelectSingleNode("//completed"); - isCompletedNode!.InnerText = "true"; + if (isCompletedNode != null) + { + isCompletedNode.InnerText = "true"; + } } // 保存 @@ -305,18 +334,21 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry var titleNode = seasonXml.SelectSingleNode("//sorttitle"); if (titleNode != null && seasonInfo["name"] != null) { + _logger.LogInformation("ChineseNfoRegistry.Job() seasonInfo: {seasonInfo}", seasonInfo["name"]); titleNode.InnerXml = $""; } var plotNode = seasonXml.SelectSingleNode("//plot"); if (plotNode != null && seasonInfo["overview"] != null) { + _logger.LogInformation("ChineseNfoRegistry.Job() seasonInfo: {seasonInfo}", seasonInfo["overview"]); plotNode.InnerXml = $""; } var outlineNode = seasonXml.SelectSingleNode("//outline"); if (outlineNode != null && seasonInfo["overview"] != null) { + _logger.LogInformation("ChineseNfoRegistry.Job() seasonInfo: {seasonInfo}", seasonInfo["overview"]); outlineNode.InnerXml = $""; } @@ -326,7 +358,6 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry var image = await GetTmdbImage(seasonNfo, poster_path); if (image != null) { - // season01-poster.jpg var imagePath = Path.Combine(Path.GetDirectoryName(tvNfo) ?? string.Empty, "season" + seasonNumber.ToString("D2") + "-poster" + Path.GetExtension(poster_path)); await File.WriteAllBytesAsync(imagePath, image); } @@ -340,7 +371,10 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry { tvXml.CreateElement("locked"); isLockedNode = tvXml.SelectSingleNode("//locked"); - isLockedNode!.InnerText = "true"; + if (isLockedNode != null) + { + isLockedNode.InnerText = "true"; + } } if (isCompletedNode != null) @@ -351,7 +385,10 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry { tvXml.CreateElement("completed"); isCompletedNode = tvXml.SelectSingleNode("//completed"); - isCompletedNode!.InnerText = "true"; + if (isCompletedNode != null) + { + isCompletedNode.InnerText = "true"; + } } seasonXml.Save(seasonNfo); @@ -444,19 +481,21 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry var titleNode = episodeXml.SelectSingleNode("//title"); if (titleNode != null && episodeInfo["name"] != null) { - // 特殊符号保留 + _logger.LogInformation("ChineseNfoRegistry.Job() episodeInfo: {episodeInfo}", episodeInfo["name"]); titleNode.InnerXml = $""; } var plotNode = episodeXml.SelectSingleNode("//plot"); if (plotNode != null && episodeInfo["overview"] != null) { + _logger.LogInformation("ChineseNfoRegistry.Job() episodeInfo: {episodeInfo}", episodeInfo["overview"]); plotNode.InnerXml = $""; } var outlineNode = episodeXml.SelectSingleNode("//outline"); if (outlineNode != null && episodeInfo["overview"] != null) { + _logger.LogInformation("ChineseNfoRegistry.Job() episodeInfo: {episodeInfo}", episodeInfo["overview"]); outlineNode.InnerXml = $""; } @@ -479,7 +518,10 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry { tvXml.CreateElement("locked"); isLockedNode = tvXml.SelectSingleNode("//locked"); - isLockedNode!.InnerText = "true"; + if (isLockedNode != null) + { + isLockedNode.InnerText = "true"; + } } if (isCompletedNode != null) @@ -490,7 +532,10 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry { tvXml.CreateElement("completed"); isCompletedNode = tvXml.SelectSingleNode("//completed"); - isCompletedNode!.InnerText = "true"; + if (isCompletedNode != null) + { + isCompletedNode.InnerText = "true"; + } } // 保存 @@ -551,6 +596,8 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry nameNode = actor.SelectSingleNode("name"); nameNode!.InnerXml = $""; } + + _logger.LogInformation("ChineseNfoRegistry.Job() actor: {actor}", name); } } } @@ -594,8 +641,8 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry record.Json = str; await _freeSql.Insert(record).ExecuteIdentityAsync(); - _logger.LogInformation("ChineseNfoRegistry.GetTmdbTv() 接口调用, 休眠 5S"); - await Task.Delay(5000); + _logger.LogInformation("ChineseNfoRegistry.GetTmdbTv() 接口调用, 休眠 1S"); + await Task.Delay(1000); return json; } @@ -646,8 +693,8 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry record.Json = str; await _freeSql.Insert(record).ExecuteIdentityAsync(); - _logger.LogInformation("ChineseNfoRegistry.GetTmdbPerson() 接口调用, 休眠 5S"); - await Task.Delay(5000); + _logger.LogInformation("ChineseNfoRegistry.GetTmdbPerson() 接口调用, 休眠 1S"); + await Task.Delay(1000); return json; } @@ -703,8 +750,8 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry record.Json = result.ToString(); await _freeSql.Insert(record).ExecuteIdentityAsync(); - _logger.LogInformation("ChineseNfoRegistry.GetTmdbPersonSearch() 接口调用, 休眠 5S"); - await Task.Delay(5000); + _logger.LogInformation("ChineseNfoRegistry.GetTmdbPersonSearch() 接口调用, 休眠 1S"); + await Task.Delay(1000); return result; } @@ -784,8 +831,8 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry record.Json = str; await _freeSql.Insert(record).ExecuteIdentityAsync(); - _logger.LogInformation("ChineseNfoRegistry.GetTmdbSeason() 接口调用, 休眠 5S"); - await Task.Delay(5000); + _logger.LogInformation("ChineseNfoRegistry.GetTmdbSeason() 接口调用, 休眠 1S"); + await Task.Delay(1000); return JObject.Parse(str); } @@ -837,8 +884,8 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry record.Json = str; await _freeSql.Insert(record).ExecuteIdentityAsync(); - _logger.LogInformation("ChineseNfoRegistry.GetTmdbEpisode() 接口调用, 休眠 5S"); - await Task.Delay(5000); + _logger.LogInformation("ChineseNfoRegistry.GetTmdbEpisode() 接口调用, 休眠 1S"); + await Task.Delay(1000); return JObject.Parse(str); }