C#三行代码获取优酷首页热门视频集合

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( " &lt; " , " < " ).Replace( " &gt; " , " > " ).Replace( " &quot; " , " \" " ) .Replace( " &nbsp; " , " " )).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(); } } }
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();
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值