using System; using System.Collections.Generic; using System.Text; using System.Collections.Specialized; using System.Web; using System.Threading; using System.Xml; using HtmlAgilityPack; namespace MovieTube.Client.Scraper { public class NosVideo : VideoScraperBase { protected override string OnScrape(string url, HtmlNode elem) { var id = SelectItem(elem, "[name=id]").Attributes["value"].Value; var fname = SelectItem(elem, "[name=fname]").Attributes["value"].Value; var data = new NameValueCollection(); data.Add("op", "download1"); data.Add("usr_login", ""); data.Add("id", id); data.Add("fname", fname); data.Add("method_free", "Proceed to Video"); elem = Post(url, data); var start = elem.InnerText.IndexOf("|php|") + 5; var end = elem.InnerText.IndexOf("|", start + 1); var u = elem.InnerText.Substring(start, end - start); elem = Get("http://nosvideo.com/xml/" + u + ".xml"); start = elem.InnerHtml.IndexOf("") + 6; end = elem.InnerHtml.IndexOf("<", start + 1); u = elem.InnerHtml.Substring(start, end - start); return u; } public override string RootUrl { get { return "http://nosvideo.com"; } } public override string ID { get { return ScrapperId.NosVideo; } } public override string Title { get { return "NosVideo"; } } public override ScraperRank Rank { get { return ScraperRank.NosVideo; } } public override bool CanProcess(string url) { if (base.CanProcess(url)) return true; return url.ToLower().Contains("nosvideo.com"); } } }