예제 #1
0
        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);
        }
예제 #2
0
 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;
 }