public async Task <List <string> > GetAds() { var htmlDocument = new HtmlAgilityPack.HtmlDocument(); var parseAdsData = new List <string>(); await Task.Run(() => { for (int i = 0; i < ContentCollection.Count; i++) { htmlDocument.LoadHtml(ContentCollection[i]); HtmlNodeCollection nodeName = htmlDocument.DocumentNode.SelectNodes("//a[@class='marginright5 link linkWithHash detailsLink']/strong"); HtmlNodeCollection nodeAds = htmlDocument.DocumentNode.SelectNodes("//a[@class='marginright5 link linkWithHash detailsLink']"); HtmlNodeCollection nodeIndividualAds = htmlDocument.DocumentNode.SelectNodes("//ul/li[@class='hidden']/a"); if (nodeName != null || nodeIndividualAds != null || nodeAds != null) { for (var k = 0; k < nodeName.Count; k++) { AdsCollection.Add(nodeAds[k].Attributes["href"].Value); parseAdsData.Add(nodeName[k].InnerText); } //for (var k = 0; k < nodeIndividualAds.Count; k++) //{ // IndividualAdsUrlsCollection.Add(nodeIndividualAds[k].Attributes["href"].Value); // IndividualAdsNamesCollection.Add(nodeIndividualAds[k].InnerText); //} } } }); return(parseAdsData); }
public void Dispose() { Response.Dispose(); ContentCollection.Clear(); AdsCollection.Clear(); PricesCollection.Clear(); LocationCollection.Clear(); PublishingTimeCollection.Clear(); IndividualAdsUrlsCollection.Clear(); IndividualAdsNamesCollection.Clear(); }