public Models.User Parse() { return(new Models.User { Avatar = Regex.Replace(User.ProfileImageUrls.Medium, "_170\\.", "_50."), Id = User.Id.ToString(), Name = User.Name, Thumbnails = Illusts.Select(i => i.ImageUrls.SquareMedium).ToArray() }); }
private async Task FetchIllusts() { var illusts = await _queryCacheService.RunAsync(_pixivClient.User.BrowsingHistory.IllustAsync, offset => _offset); illusts?.IllustList.ForEach(w => Illusts.Add(w)); if (string.IsNullOrWhiteSpace(illusts?.NextUrl)) { HasMoreItems = false; } else { _offset = UrlParameter.ParseQuery(illusts.NextUrl)["offset"]; } }
private async Task FetchIllusts() { var illusts = await _queryCacheService.RunAsync(_pixivClient.IllustV1.RankingAsync, mode => _rankingMode.ToParamString(_rankingType), filter => "for_ios", offset => _offset); illusts?.IllustList.ForEach(w => Illusts.Add(w)); if (string.IsNullOrWhiteSpace(illusts?.NextUrl)) { HasMoreItems = false; } else { _offset = UrlParameter.ParseQuery(illusts.NextUrl)["offset"]; } }
private async Task FetchIllusts(string contentType) { var illusts = await _queryCacheService.RunAsync(_pixivClient.User.IllustsAsync, user_id => _id, filter => "for_ios", type => contentType, offset => _offset); illusts?.IllustList.ForEach(w => Illusts.Add(w)); if (string.IsNullOrWhiteSpace(illusts?.NextUrl)) { HasMoreItems = false; } else { _offset = UrlParameter.ParseQuery(illusts.NextUrl)["offset"]; } }
public void EnqueueToDownload(string keyword, Illusts illusts) { var filename = $"{illusts.id}.{Path.GetExtension(illusts.image_urls.large)}"; if (_configuration.GetValue <bool>("EnableRatioFilter") && (FilterRule.RatioH(illusts) || FilterRule.RatioH(illusts)) == false) { return; } if (EnqueuedFileNames.Add(filename) == false) { return; } var imageUrl = !string.IsNullOrWhiteSpace(illusts.meta_single_page.original_image_url) ? illusts.meta_single_page.original_image_url : illusts.image_urls.large; BackgroundJob.Enqueue(() => Download(keyword, imageUrl, filename)); }
public static bool IllustType(Illusts illusts) => "Illust".Equals(illusts.type, StringComparison.OrdinalIgnoreCase);
public static bool Bookmark2(Illusts illusts) => illusts.total_bookmarks >= 2000;
public static bool RatioV(Illusts illusts) => Math.Abs(illusts.height / illusts.width - 16 / 9) < 1 && illusts.height > 1920;
public static bool RatioH(Illusts illusts) => Math.Abs(illusts.height / illusts.width - 9 / 16) < 1 && illusts.width > 1920;