public static imdbitem GetInfoByTitle(string Title) { string url = "http://www.imdb.com/title/tt0133093"; HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url); req.Method = "GET"; req.UserAgent = "Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))"; string source; using (StreamReader reader = new StreamReader(req.GetResponse().GetResponseStream())) { source = reader.ReadToEnd(); } HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(source); XDocument xdoc = XDocument.Parse(doc.DocumentNode.InnerHtml, LoadOptions.None); imdbitem i = new imdbitem(); i.rating = xdoc.Descendants("rating").Select(x => x.Value).FirstOrDefault(); i.rating_count = xdoc.Descendants("rating_count").Select(x => x.Value).FirstOrDefault(); i.year = xdoc.Descendants("year").Select(x => x.Value).FirstOrDefault(); i.rated = xdoc.Descendants("rated").Select(x => x.Value).FirstOrDefault(); i.title = xdoc.Descendants("title").Select(x => x.Value).FirstOrDefault(); i.imdb_url = xdoc.Descendants("imdb_url").Select(x => x.Value).FirstOrDefault(); i.plot_simple = xdoc.Descendants("plot_simple").Select(x => x.Value).FirstOrDefault(); i.type = xdoc.Descendants("type").Select(x => x.Value).FirstOrDefault(); i.poster = xdoc.Descendants("poster").Select(x => x.Value).FirstOrDefault(); i.imdb_id = xdoc.Descendants("imdb_id").Select(x => x.Value).FirstOrDefault(); i.also_known_as = xdoc.Descendants("also_known_as").Select(x => x.Value).FirstOrDefault(); i.language = xdoc.Descendants("language").Select(x => x.Value).FirstOrDefault(); i.country = xdoc.Descendants("country").Select(x => x.Value).FirstOrDefault(); i.release_date = xdoc.Descendants("release_date").Select(x => x.Value).FirstOrDefault(); i.filming_locations = xdoc.Descendants("filming_locations").Select(x => x.Value).FirstOrDefault(); i.runtime = xdoc.Descendants("runtime").Select(x => x.Value).FirstOrDefault(); i.directors = xdoc.Descendants("directors").Descendants("item").Select(x => x.Value).ToList(); i.writers = xdoc.Descendants("writers").Descendants("item").Select(x => x.Value).ToList(); i.actors = xdoc.Descendants("actors").Descendants("item").Select(x => x.Value).ToList(); i.genres = xdoc.Descendants("genres").Descendants("item").Select(x => x.Value).ToList(); return(i); }
public static imdbitem GetInfoByTitle(string Title) { string url = "http://imdbapi.org/?type=xml&limit=1&title=" + Title; HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url); req.Method = "GET"; req.UserAgent = "Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))"; string source; using (StreamReader reader = new StreamReader(req.GetResponse().GetResponseStream())) { source = reader.ReadToEnd(); } HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(source); XDocument xdoc = XDocument.Parse(doc.DocumentNode.InnerHtml, LoadOptions.None); imdbitem i = new imdbitem(); i.rating = xdoc.Descendants("rating").Select(x => x.Value).FirstOrDefault(); i.rating_count = xdoc.Descendants("rating_count").Select(x => x.Value).FirstOrDefault(); i.year = xdoc.Descendants("year").Select(x => x.Value).FirstOrDefault(); i.rated = xdoc.Descendants("rated").Select(x => x.Value).FirstOrDefault(); i.title = xdoc.Descendants("title").Select(x => x.Value).FirstOrDefault(); i.imdb_url = xdoc.Descendants("imdb_url").Select(x => x.Value).FirstOrDefault(); i.plot_simple = xdoc.Descendants("plot_simple").Select(x => x.Value).FirstOrDefault(); i.type = xdoc.Descendants("type").Select(x => x.Value).FirstOrDefault(); i.poster = xdoc.Descendants("poster").Select(x => x.Value).FirstOrDefault(); i.imdb_id = xdoc.Descendants("imdb_id").Select(x => x.Value).FirstOrDefault(); i.also_known_as = xdoc.Descendants("also_known_as").Select(x => x.Value).FirstOrDefault(); i.language = xdoc.Descendants("language").Select(x => x.Value).FirstOrDefault(); i.country = xdoc.Descendants("country").Select(x => x.Value).FirstOrDefault(); i.release_date = xdoc.Descendants("release_date").Select(x => x.Value).FirstOrDefault(); i.filming_locations = xdoc.Descendants("filming_locations").Select(x => x.Value).FirstOrDefault(); i.runtime = xdoc.Descendants("runtime").Select(x => x.Value).FirstOrDefault(); i.directors = xdoc.Descendants("directors").Descendants("item").Select(x => x.Value).ToList(); i.writers = xdoc.Descendants("writers").Descendants("item").Select(x => x.Value).ToList(); i.actors = xdoc.Descendants("actors").Descendants("item").Select(x => x.Value).ToList(); i.genres = xdoc.Descendants("genres").Descendants("item").Select(x => x.Value).ToList(); return i; }