private async Task <List <Meme> > GetMemesFromPage(int pageNumber) { var memesFromSpecificPage = new List <Meme>(); var url = $"{_baseAddress}/strona/{pageNumber}"; SendMessage($"Getting memes from URL: {url}"); var memePage = await _client.GetAsync(url).Result.Content.ReadAsStringAsync(); var htmlPartsContainingMeme = KwejkHtmlParser.GetMemeParts(memePage); foreach (var memePart in htmlPartsContainingMeme) { try { memesFromSpecificPage.Add(new Meme() { Page = Meme.SourcePage.KWEJK, Title = KwejkHtmlParser.GetTitleOfMeme(memePart), ImagePath = KwejkHtmlParser.GetMemeImgPath(memePart), Tags = KwejkHtmlParser.GetMemeTags(memePart) }); } catch (Exception e) { SendMessage($"Exception catched: {e.Message} on page {url}"); } } return(memesFromSpecificPage); }
private async Task <int> GetNewestPageNumber() { var mainPage = await _client.GetAsync(_baseAddress).Result.Content.ReadAsStringAsync(); return(int.Parse(KwejkHtmlParser.GetLastPageNumber(mainPage))); }