asp.net 截取页面程序

此例子 是抓取视频网站 http://1qdisk.com/   的视频,嵌入的网页中 希望可以帮到大家
 
 private void BindListInfo()
    {
 
       //要抓取的目标页面
        string myuri = " http://1qdisk.com/ ";    
 
        //读取目标页面html源码
        WebRequest webr = WebRequest.Create(myuri);  
        Stream rc = webr.GetResponse().GetResponseStream();
        StreamReader read = new StreamReader(rc, System.Text.Encoding.GetEncoding("utf-8"));
        string HtmlStr = read.ReadToEnd(); 
 
         //  替换读取的html源码的内容 (链接,图片路径)
        HtmlStr = HtmlStr.Replace("<img src=\"/upfile/", "<img onmousedown=\"document.oncontextmenu=stop\" src=\" http://1qdisk.com/upfile/ ");
        HtmlStr = HtmlStr.Replace("<a href=\"/vod/view.html?idx=", "<a href=\"/Vod_ListInfoView.aspx?idx=");
         HtmlStr = HtmlStr.Replace("/index_convert_", " http://1qdisk.com/index_convert _"); 
       
       //截取页面中需要的html源码部分
       bool IsMore = true;
       //截取的开始部分标记,根据自己需求更改
        HtmlStr = HtmlStr.Replace("<div style=\"width:963px;margin:0px auto;\" >", "☆");  
        IsMore = false;
        string[] Arr = HtmlStr.Split('☆');
        if (Arr.Length > 1) 
        {
            //删除 开始标记之前的代码,并根据自己需求替换一部分代码
            HtmlStr = "<div style=\"width:903px;margin:0px auto;border-bottom:1px solid #ececec;margin-bottom:5px;\" >" + Arr[1].Replace("963", "903");
 
         //截取的结束部分的标记,根据自己需求更改
            HtmlStr = HtmlStr.Replace("<!-- new update free -->", "▷");
            Arr = HtmlStr.Split('▷');
 
            //删除 结束标记之后的代码,并根据自己需求替换一部分代码
            HtmlStr = Arr[0].Replace("973", "903");
          
           //此处是利用正则表达式,过滤掉截取的到代码中的所有符合条件的代码
         //<img[\\s\\S]{0,100} 表示以 <img开头以 >为结束,并且中间包含 的字符串
            HtmlStr = RegReplace(HtmlStr, "<img[\\s\\S]{0,100}
 
 
        }
        else
        {
            HtmlStr = "没有截取到数据.";
        }
      
      //将截取到的 HtmlStr 放入页面的容器中
        lit_Indexinfo.Text = HtmlStr;  
        read.Dispose();
        rc.Dispose();
    }
 
  //过滤符合(正则表达)条件的字符
    private string RegReplace(string content, string Reg)
    {
        string str = content;
        str = Regex.Replace(str, @"" + Reg + "", "", RegexOptions.IgnoreCase);
        return str;
    }

你可能感兴趣的:(职场,asp.net,休闲,截取页面程序)