示例#1
0
 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);
 }
示例#2
0
 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
 }