一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

ASP.NET技巧:請求網址并解析返回的html

  目的,把遠程服務器傳回的Html,解析到類里面,為GridView等提供數據源

  1 、向遠程服務器Post數據

public int PostData(string url, string data, out string info)
        {
            info = "";
            CookieContainer cc = new CookieContainer();
            HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
            request.CookieContainer = cc;
            request.Method = "POST";
            request.ContentType = "application/x-www-form-urlencoded";
            Stream requestStream = request.GetRequestStream();
            byte[] byteArray = Encoding.UTF8.GetBytes(data);
            requestStream.Write(byteArray, 0, byteArray.Length);
            requestStream.Close();
            HttpWebResponse response = request.GetResponse() as HttpWebResponse;
            Uri responseUri = response.ResponseUri;
            Stream receiveStream = response.GetResponseStream();
            Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
            StreamReader readStream = new StreamReader(receiveStream, encode);
            string result = readStream.ReadToEnd();
            info = result;
            return 0;
        }

  2、解析返回的html,有省略

public ClassInfo[] GetClass(string html)
        {
            ArrayList ar = new ArrayList();
            ArrayList arr = new ArrayList();
            string table = "";
            Regex regtable = new Regex(@"(?<=<table.*>).*?(?=</table>)", RegexOptions.Singleline);
            Match ma = regtable.Match(html);
            while (ma.Success)
            {
                if (ma.Value.Trim() != "")
                {
                    arr.Add(HttpUtility.HtmlDecode(ma.Value));
                }
                ma = ma.NextMatch();
            }
            for (int i = 0; i < arr.Count; i++)
            {
                table = arr[i].ToString() + table;
            }
            Regex reg = new Regex(@"(?<=<.*?>).*?(?=<.*?>)", RegexOptions.Singleline);
            Match m = reg.Match(table);
            while (m.Success)
            {
                if (m.Value.Trim() != "")
                {
                    ar.Add(HttpUtility.HtmlDecode(m.Value));
                }
                m = m.NextMatch();
            }
           ClassInfo[] ci = new ClassInfo[classno];
            for (int i = 0; i < classno; i++)
            {
                ci[i] = new ClassInfo();
                ci[i].RegisterDate = (ar[i * 8 + 0]).ToString();
                ci[i].LoginDate = (ar[i * 8 + 1]).ToString();
                ci[i].LogoutDate = (ar[i * 8 + 2]).ToString();
                ci[i].UseMin = ar[i * 8 + 3].ToString();
                ci[i].ClassName = ar[i * 8 + 5].ToString();
                ci[i].ClassType = ar[i * 8 + 6].ToString();
                ci[i].Percent = ar[i * 8 + 7].ToString();
            }
            return ci;
        }

  3、定義ClassInfo類(課程類),用CodeSmith生成

 public class ClassInfo
    {
        Member Variables#region Member Variables
        protected string _loginDate;
        protected string _logoutDate;
        protected string _registerDate;
        protected string _useMin;
        protected string _className;
        protected string _classType;
        protected string _percent;
        //protected string _nouse;
        #endregion
        Constructors#region Constructors
        public ClassInfo() { }
        public ClassInfo(string loginDate, string logoutDate, string registerDate, string useMin, string className, string classType, string percent)
        {
            this._loginDate = loginDate;
            this._logoutDate = logoutDate;
            this._registerDate = registerDate;
            this._useMin = useMin;
            this._className = className;
            this._classType = classType;
            this._percent = percent;
        }
        #endregion
        Public Properties#region Public Properties
        //        public string NoUse
        //        {
        //            get{return _nouse;}
        //            set{ _nouse= value;}
        //        }
        public string LoginDate
        {
            get { return _loginDate; }
            set { _loginDate = value; }
        }
        public string LogoutDate
        {
            get { return _logoutDate; }
            set { _logoutDate = value; }
        }
        public string RegisterDate
        {
            get { return _registerDate; }
            set { _registerDate = value; }
        }
        public string UseMin
        {
            get { return _useMin; }
            set { _useMin = value; }
        }
        public string ClassName
        {
            get { return _className; }
            set
            {
                if (value != null && value.Length > 50)
                    throw new ArgumentOutOfRangeException("Invalid value for ClassName", value, value.ToString());
                _className = value;
            }
        }
        public string ClassType
        {
            get { return _classType; }
            set
            {
                if (value != null && value.Length > 50)
                    throw new ArgumentOutOfRangeException("Invalid value for ClassType", value, value.ToString());
                _classType = value;
            }
        }
        public string Percent
        {
            get { return _percent; }
            set
            {
                if (value != null && value.Length > 50)
                    throw new ArgumentOutOfRangeException("Invalid value for Percent", value, value.ToString());
                _percent = value;
            }
        }
        #endregion
    }

 

AspNet技術ASP.NET技巧:請求網址并解析返回的html,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 日韩欧美区 | 九九精彩视频在线观看视频 | 亚洲图片小说视频 | 中国美女一级毛片 | 欧洲精品一区二区三区在线观看 | 久久国产一区二区 | 五月天婷婷影院 | 九九午夜 | 精品91视频| 337p人体 欧洲人体 亚 | 一区二区三区四区五区 | 在线观看视频一区二区三区 | 国产视频合集 | 亚洲成人贴图 | 国产高清国内精品福利色噜噜 | 国内精品久久久久久久亚洲 | 国产福利免费视频 | 欧美成a人免费观看久久 | 成人四色| 亚洲国产一区二区在线 | 亚洲黄色在线网站 | 色婷婷综合在线 | 岛国最新资源网站 | 欧美videos在线观看 | 欧美黄色片在线 | 女人被免费视频网站 | 国产成人综合在线视频 | 色综合视频在线 | 精品视频第一页 | 黄色小视频在线观看 | 水蜜桃一二二区视在线 | 国产成人香蕉在线视频网站 | 亚洲国产成人久久精品动漫 | 久久88色综合色鬼 | 中文字幕在线视频观看 | 91久久久久久久 | 久久加勒比 | 蜜臀91精品国产免费观看 | 国产精品每日在线观看男人的天堂 | 亚洲图片小说网 | 亚洲短视频在线观看 |