利用WebClient和WebRequest类获得网页源代码

王朝c#·作者佚名  2006-12-17
窄屏简体版  字體: |||超大  

利用WebClient和WebRequest类获得网页源代码

作者:孟宪会 出自:【孟宪会之精彩世界】 发布日期:2004年1月9日 9点24分42秒

利用.NET框架提供的 WebClient类 和 WebRequest类,我们可以很轻易地得到给定URL地址的源代码,很简单,以下是C#的完整的例子.

查看例子

GetPageHtml.aspx

得到网页源代码 得到任意网页源代码 http://dotnet.aspx.cc/content.aspx

GetPageHtml.aspx.cs

using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Drawing;using System.Web;using System.Web.SessionState;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;using System.IO;using System.Net;using System.Text;namespace eMeng.Exam{ /// /// GetPageHtml 的摘要说明。 /// public class GetPageHtml : System.Web.UI.Page { protected System.Web.UI.WebControls.Button WebClientButton; protected System.Web.UI.WebControls.Button WebRequestButton; protected System.Web.UI.WebControls.TextBox ContentHtml; protected System.Web.UI.WebControls.TextBox UrlText; private string PageUrl = ""; private void Page_Load(object sender, System.EventArgs e) {} #region Web Form Designer generated code override protected void OnInit(EventArgs e) { InitializeComponent(); base.OnInit(e); } /// /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// private void InitializeComponent() { this.WebClientButton.Click += new System.EventHandler(this.WebClientButton_Click); this.WebRequestButton.Click += new System.EventHandler(this.WebRequestButton_Click); this.Load += new System.EventHandler(this.Page_Load); } #endregion private void WebClientButton_Click(object sender, System.EventArgs e) { PageUrl = UrlText.Text; WebClient wc = new WebClient(); wc.Credentials = CredentialCache.DefaultCredentials; ///方法一: Byte[] pageData = wc.DownloadData(PageUrl); ContentHtml.Text = Encoding.Default.GetString(pageData); /// 方法二: /// ***************代码开始********** /// Stream resStream = wc.OpenRead(PageUrl); /// StreamReader sr = new StreamReader(resStream,System.Text.Encoding.Default); /// ContentHtml.Text = sr.ReadToEnd(); /// resStream.Close(); /// **************代码结束******** /// wc.Dispose(); } private void WebRequestButton_Click(object sender, System.EventArgs e) { PageUrl = UrlText.Text; WebRequest request = WebRequest.Create(PageUrl); WebResponse response = request.GetResponse(); Stream resStream = response.GetResponseStream(); StreamReader sr = new StreamReader(resStream, System.Text.Encoding.Default); ContentHtml.Text = sr.ReadToEnd(); resStream.Close(); sr.Close(); } }}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航