c#网页数据抓取/asp.net网页数据抓取
2012-08-22 08:36
525 查看
/// <summary>
/// 获取远程页面数据
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
public string getWebPageData(string RemoteURL, Encoding EncodingType)
{
WebClient WC = new WebClient();
WC.Credentials = CredentialCache.DefaultCredentials;
WebRequest webRequest = null;
try
{
webRequest = HttpWebRequest.Create(RemoteURL);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
return "";
}
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
Stream stream = webResponse.GetResponseStream();
byte[] htmlByte = GetByteContent(stream);
string pageHtml = EncodingType.GetString(htmlByte);
return pageHtml;
}
private byte[] GetByteContent(Stream stream)
{
ArrayList arBuffer = new ArrayList();
byte[] buffer = new byte[1024];
int offset = 1024;
int count = stream.Read(buffer, 0, offset);
while (count > 0)
{
for (int i = 0; i < count; i++)
{
arBuffer.Add(buffer[i]);
}
count = stream.Read(buffer, 0, offset);
}
stream.Close();
return (byte[])arBuffer.ToArray(System.Type.GetType("System.Byte"));
}
/// 获取远程页面数据
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
public string getWebPageData(string RemoteURL, Encoding EncodingType)
{
WebClient WC = new WebClient();
WC.Credentials = CredentialCache.DefaultCredentials;
WebRequest webRequest = null;
try
{
webRequest = HttpWebRequest.Create(RemoteURL);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
return "";
}
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
Stream stream = webResponse.GetResponseStream();
byte[] htmlByte = GetByteContent(stream);
string pageHtml = EncodingType.GetString(htmlByte);
return pageHtml;
}
private byte[] GetByteContent(Stream stream)
{
ArrayList arBuffer = new ArrayList();
byte[] buffer = new byte[1024];
int offset = 1024;
int count = stream.Read(buffer, 0, offset);
while (count > 0)
{
for (int i = 0; i < count; i++)
{
arBuffer.Add(buffer[i]);
}
count = stream.Read(buffer, 0, offset);
}
stream.Close();
return (byte[])arBuffer.ToArray(System.Type.GetType("System.Byte"));
}
相关文章推荐
- Asp.net 使用正则和网络编程抓取网页数据(实用)
- asp.net(c#)做一个网页数据采集工具
- ASP.NET网页抓取数据
- asp.net(c#)做一个网页数据采集工具
- Asp.net 使用正则和网络编程抓取网页数据(有用)
- asp.net/C#网页数据采集
- C# asp.net 抓取需要登录的网页内容 抓取asp.net登录验证的网站
- asp.net(c#)做一个网页数据采集工具
- asp.net/C#网页数据采集
- asp.net的抓取网页数据源码
- C#(ASP.NET) 下载数据 C#实现通过程序自动抓取远程Web网页信息
- ASP.NET 抓取网页内容-Post 数据
- 浅析基于ASP.NET网页的C#数据采集
- ASP.NET抓取其他网页代码
- asp.net(C#) Access 数据操作类
- asp.net 抓取网页源码三种实现方法
- c# asp.net 简单的前后台数据交换。
- asp.net导出Excel/Csv格式数据最优方案(C#)
- ASP.NET 抓取网页内容
- 利用xmlHTTP获取网页源码[ASP.NET C#]