private static async Task <AnimateList> GetAnimeTitle(string title, AnimateList animeItem) { try { if (string.IsNullOrEmpty(animeItem.JaJp) || string.IsNullOrEmpty(animeItem.RuRu) || string.IsNullOrEmpty(animeItem.ZhTw)) { if (EnableAdvLogging) { Logger.Info($"getting anime title for {title}"); } animeItem.JaJp = await GetLName(title, EnSite, (node) => { return(new { Name = node.TextContent.Trim(), LName = node.NextSibling.NextSibling.FirstChild.TextContent.Trim(), }); }); animeItem.ZhTw = await GetLName(animeItem.JaJp, ZhSite, (node) => { return(new { LName = node.TextContent.Trim(), Name = node.NextSibling.NextSibling.FirstChild.TextContent.Trim(), }); }); animeItem.RuRu = await GetLName(animeItem.JaJp, RuSite, (node) => { return(new { LName = node.TextContent.Trim(), Name = node.NextSibling.NextSibling.FirstChild.TextContent.Trim(), }); }); if (EnableAdvLogging) { Logger.Info($"get anime name complete, {animeItem.JaJp} {animeItem.RuRu} {animeItem.ZhTw}"); } } } catch (Exception e) { Logger.Warn($"can not get JName {e.Message}"); } return(animeItem); }
public static string GetLanguegeName(string language, AnimateList item) { if (item == null) { return(null); } language = language.ToLower(); if (language.Contains("zh")) { return(item.ZhTw ?? item.JaJp ?? item.EnUs); } else if (language.Contains("ru")) { return(item.RuRu ?? item.JaJp ?? item.EnUs); } else if (language.Contains("jp")) { return(item.JaJp ?? item.EnUs); } return(item.EnUs); }