private static void FetchData(IWebDriver drive, string city, ApaPage apa) { drive.Navigate().GoToUrl(string.Format(ApaPage.Url, city)); var data = apa.FetchData(); CleanUpData(data); var sortedData = data.OrderBy(x => int.Parse(x.Sqft)); if (File.Exists(file)) File.Delete(file); int ctr = 2; var rowData = "bed,price,sqft,$sqft,city"; WriteData(rowData); foreach (var d in sortedData) { rowData = string.Format("{0},{1},{2},=(B{3}/C{3}),{4}", d.Bed, d.Price, d.Sqft, ctr, d.City); if (!string.IsNullOrEmpty(d.Bed)) { WriteData(rowData); ctr++; } } rowData = string.Format(",=AVERAGE(B2:B{0}),=AVERAGE(c2:c{0}),=AVERAGE(d2:d{0}),", ctr - 1); WriteData(rowData); }
static void Main(string[] args) { var cities = new string[] { "muskegon", "grandrapids", "holland"};//, "sfbay" }; foreach (var city in cities) { file = string.Format("craigslist.renatal.data.{0}.{1}.{2}.{3}.csv", city, DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day); var drive = WebDriverFactory.GetBrowser(string.Format(ApaPage.Url, city)); var apa = new ApaPage(drive); FetchData(drive, city, apa); drive.Quit(); } }