Example #1
0
        //iterate over ebay from page 1 till lastpage ,if -1 till lastpage
        public void Loop(int lastpage)
        {
            int checkingPageIndex = 1;

            try
            {
                foreach (KeyValuePair <String, List <String> > entry in _urls)
                {
                    String key = entry.Key;
                    // Do something here
                    List <EbayItem> list = new List <EbayItem>();
                    foreach (String s in entry.Value)
                    {
                        String starturl = s;
                        while (starturl != null && checkingPageIndex != lastpage + 1)
                        {
                            Console.WriteLine(this.GetType().Name + " checking " + starturl);

                            string filename = string.Format("ebay{0}.html", checkingPageIndex);
                            string content  = _goblin.FetchHtml(starturl); //blocking call(?)

                            CreateDocument(content, filename);
                            Console.WriteLine("before adding : " + list.Count);
                            list.AddRange(CreateItems(filename));
                            Console.WriteLine("after adding : " + list.Count);
                            Console.WriteLine(this.GetType().Name + " finished reading page " + checkingPageIndex);
                            starturl = NextPage(starturl, checkingPageIndex);
                            checkingPageIndex++;
                        }
                    }
                    Console.WriteLine("after finish url : " + list.Count);
                    checkingPageIndex = 1;
                    _itemsList.Add(key, list);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(this.GetType().Name + " Error : Loop");
                Console.WriteLine(e.Message);
                Console.WriteLine(e.StackTrace);
            }
        }