public void GetWallpaper(Wallpaper wallpaper, string favPath) { if (!loggedIn) throw new NotLoggedInException(); var request = new RestRequest(wallpaper.url); var res = client.Execute(request); var htmlDocument = new HtmlDocument(); htmlDocument.LoadHtml(res.Content); var actualUrl = htmlDocument.DocumentNode.QuerySelector("#bigwall img").GetAttributeValue("src", ""); wallpaper.actualUrl = actualUrl; WebClient wc = new WebClient(); var fn = Path.Combine(favPath, Path.GetFileName(wallpaper.actualUrl)); var fi = new FileInfo(fn); if (!fi.Exists) wc.DownloadFile(wallpaper.actualUrl, fn); }
public void LoadWallpapers(Collection collection) { if (!loggedIn) throw new NotLoggedInException(); var wals = new List<Wallpaper>(); int i = 0; var again = true; while (again) { var request = new RestRequest(string.Format("{0}/{1}/0", collection.url, i)); var res = client.Execute(request); var htmlDocument = new HtmlDocument(); htmlDocument.LoadHtml(res.Content); var walls = htmlDocument.DocumentNode.QuerySelectorAll(".thlink.thdraggable"); foreach (var wal in walls) { var w = new Wallpaper(); w.url = wal.GetAttributeValue("href", ""); Console.WriteLine(w.url); w.id = System.IO.Path.GetFileName(w.url); wals.Add(w); } if (walls.Count() == 60) i += 60; else again = false; } collection.wallpapers = wals; //set x-requested-with --later }