Beispiel #1
0
        static void ScrapeForDb()
        {
            Console.WriteLine("Scraping...");

            var ge   = new GrandExchange();
            var dict = ge.GetAlphabeticalCatalogue();

            using (var sw = new StreamWriter("./items.json"))
            {
                sw.WriteLine("{");
                foreach (var kvp in dict)
                {
                    var pageCount = Math.Ceiling(kvp.Value / 12d);

                    for (var i = 1; i <= pageCount; i++)
                    {
                        var itemList = ge.GetCataloguePage(kvp.Key, i);

                        while (itemList == null)
                        {
                            itemList = ge.GetCataloguePage(kvp.Key, i);
                            Thread.Sleep(500);
                        }

                        foreach (var item in itemList.Items)
                        {
                            Console.WriteLine($"{item.Name}: {item.Id}");
                            sw.WriteLine($"    \"{item.Name}\": {item.Id},");
                        }
                        Thread.Sleep(500);
                    }
                }
                sw.WriteLine("}");
            }
            Console.WriteLine("Done.");
            Console.ReadLine();
        }