C# 读取网页源码的三种办法WebClient、WebRequest、HttpWebRequest

本文介绍了使用C#编程语言从网页中获取源码的三种方法:WebClient、WebRequest和HttpWebRequest。通过示例代码详细展示了如何实现,并推荐使用HttpWebRequest方式,因为它提供了更多的自定义选项。
摘要由CSDN通过智能技术生成
直接看这三种办法的源码吧,
using System;
using System.IO;
using System.Net;

namespace ReadHtml{
class ReadHtml{
static void Main(){
System.Console.WriteLine("准备更新数据");
string url = "http://www.jiuwola.com/";
//string html = new ReadHtml().GetHtmlByWebClient(url);
//string html = new ReadHtml().GetHtmlByWebRequest(url);
string html = new ReadHtml().GetHtmlByHttpWebRequest(url);
System.Console.WriteLine(html);
}

//第一种
private string GetHtmlByWebClient(string url){
string html = "";
WebClient wc = new WebClient();
Stream s = wc.OpenRead(url);
StreamReader sr = new StreamReader(s,System.Text.Encoding.GetEncoding("utf-8"));
html = sr.ReadToEnd();
s.Close();
return html;
}

//第二种
private string GetHtmlByWebRequest(string url){
Uri uri = new Uri(url);
WebRequest request = WebRequest.Create(uri);
WebResponse response = request.GetResponse();
Stream s = response.GetResponseStream();
StreamReader sr = new StreamReader(s,System.Text.Encoding.GetEncoding("utf-8"));
string html = sr.ReadToEnd();
s.Close();
response.Close();
return html;
}

//第三种  建议使用这一种办法
private string GetHtmlByHttpWebRequest(string url){
Uri uri = new Uri(url);
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.UserAgent = "User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705";
request.Accept = "*/*";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream s = response.GetResponseStream();
StreamReader sr = new StreamReader(s,System.Text.Encoding.GetEncoding("utf-8"));
string html = sr.ReadToEnd();
s.Close();
response.Close();
return html;
}
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值