- C# code
-
using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; namespace Youku { /// <summary> /// 优酷热门视频实体类 /// </summary> public class YouHotVideo { public string Title { get; set; } public string ImgURI { get; set; } public string URI { get; set; } public YouHotVideo(string title, string imgUri, string uri) { Title = title; ImgURI = imgUri; URI = uri; } public static List<YouHotVideo> GetALL() { var v = new StreamReader(HttpWebRequest.Create("http://www.youku.com") .GetResponse().GetResponseStream(), Encoding.UTF8).ReadToEnd() .Replace("<li ", "❇").Split('❇').Where(x => x.Contains("v_link") || x.Contains("v_thumb")) .Select(x => x.Substring(x.IndexOf("http"))).Select(x => x.Remove(x.IndexOf(">"))).ToList(); v = v.Select(x => x + v.ElementAt(v.IndexOf(x) + (v.IndexOf(x) == v.Count() - 1 ? 0 : 1))).ToList(); return v.Where(x => v.IndexOf(x) % 2 == 0).Where(x => x.Contains("html") && x.Contains("ykimg")) .Select(x => x.Replace("<", "<").Replace(">", ">").Replace(""", "\"") .Replace(" ", " ")).ToList().Select(x => new YouHotVideo(x.Remove(x.LastIndexOf("\"")) .Substring(x.IndexOf("title") + 7), x.Remove((x.Contains("src") ? x.LastIndexOf(" src") : x .LastIndexOf(" alt")) - 1).Substring(x.IndexOf("ykimg") - 10), x.Remove(x.IndexOf("html") + 4))).ToList(); } } }
- C# code
-
using System; namespace ConsoleApplicationDemo { class Program { static void Main(string[] args) { Youku.YouHotVideo.GetALL().ForEach(x => { Console.WriteLine("标题:" + x.Title); Console.WriteLine("图片地址:" + x.ImgURI); Console.WriteLine("视频地址:" + x.URI); Console.WriteLine(); }); Console.ReadLine(); } } }