Exemplo n.º 1
0
        public async Task Start()
        {
            var flatAds = new List <SkelbiuLtFlatAd>();

            var nextPageUrl = GenerateUrl(new SkelbiuLtFlatFilter());

            try
            {
                var pageCounter = 1;
                while (nextPageUrl != null)
                {
                    var html = CQ.CreateFromUrl(nextPageUrl);

                    var parser     = new SkelbiuLtParser();
                    var adBaseInfo = parser.GetItemsBases(html);
                    nextPageUrl = GenerateUrl(parser.GetNextPageLink(html));

                    Console.WriteLine($"Parsing. Page: {pageCounter++}. Items: {adBaseInfo.Count}.");

                    //#21 Recognize if Ad is closed
                    foreach (var adBase in adBaseInfo)
                    {
                        var flat = ImportFlatAdByUrl(adBase.Link);
                        flatAds.Add(flat);
                    }
                }
                Console.ReadLine();
            }
            catch (XmlException ex)
            {
                Console.WriteLine(ex.Message);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Exemplo n.º 2
0
 public SkelbiuLtImporter()
 {
     _client = new HttpClient();
     _parser = new SkelbiuLtParser();
 }