bool FetchPastebin() { HttpClient client = new HttpClient(); string response = client.GetStringAsync("http://pastebin.com/archive").Result; HtmlDocument document = new HtmlDocument(); document.LoadHtml(response); var query_results = document.DocumentNode.Descendants("table").Where(node => node.HasClass("maintable")); if (query_results.Count() > 0) { var recent_pastes_table_node = query_results.First(); foreach (var row_node in recent_pastes_table_node.Descendants("tr")) { var children = row_node.Descendants("td"); if (children.Count() > 0) { var a_link = children.First().Descendants("a").First(); string paste_id = a_link.Attributes["href"].Value.Remove(0, 1); string paste_title = a_link.InnerText; if (!RecentPastes.ContainsKey(paste_id)) { Console.WriteLine($"id: {paste_id}, title: {paste_title}"); ScrapedPaste paste = new ScrapedPaste(paste_id); RecentPastes.Add(paste_id, paste); notebook1.AppendPage(paste, new Label($"{paste_title} [{paste_id}]")); notebook1.ShowAll(); //Thread.Sleep(1000); } } } } else { Console.WriteLine("No results..."); } /*ScrapedPaste paste = new ScrapedPaste("testm3u"); * * notebook1.AppendPage(paste, new Label("testm3u")); * * notebook1.ShowAll();*/ return(true); }
void GetSelectedPaste(System.Action <ScrapedPaste> doThis) { if (notebook1.Children[notebook1.Page].GetType() == typeof(ScrapedPaste)) { ScrapedPaste paste = (ScrapedPaste)notebook1.Children[notebook1.Page]; doThis(paste); } else { // is probably home page } }