a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C# > 正文

使用C# Winform應用程序獲取網頁源文件的解決方法

2020-01-24 03:17:28
字體:
來源:轉載
供稿:網友

在C# Winform 應用程序中,獲取某網頁的源文件,可以用以下方法:

首先引入名稱空間
using System.IO;
using System.Net;

WebClient MyWebClient = new WebClient();                 MyWebClient.Credentials = CredentialCache.DefaultCredentials;//獲取或設置用于向Internet資源的請求進行身份驗證的網絡憑據Byte[] pageData = MyWebClient.DownloadData("http://www.baidu.com");//string pageHtml = Encoding.Default.GetString(pageData);  FileStream file = new FileStream("C://test.html", FileMode.Create); file.Write(pageData, 0, pageData.Length);

附,c# 獲取網頁源碼的代碼舉例。
C# 獲取指定網頁HTML原代碼可使用:WebClient WebRequest HttpWebRequest 三種方式。
當然也可使用webBrowse,有興趣的朋友,可以自己研究下。

1,WebClient方式

private string GetWebClient(string url){  string strHTML = "";  WebClient myWebClient = new WebClient();  Stream myStream = myWebClient.OpenRead(url);  StreamReader sr = new StreamReader(myStream, System.Text.Encoding.GetEncoding("utf-8"));  strHTML = sr.ReadToEnd();  myStream.Close();  return strHTML;}

2,WebRequest方式

private string GetWebRequest(string url){  Uri uri = new Uri(url);  WebRequest myReq = WebRequest.Create(uri);  WebResponse result = myReq.GetResponse();  Stream receviceStream = result.GetResponseStream();  StreamReader readerOfStream = new StreamReader(receviceStream, System.Text.Encoding.GetEncoding("utf-8"));  string strHTML = readerOfStream.ReadToEnd();  readerOfStream.Close();  receviceStream.Close();  result.Close();  return strHTML;}

3,HttpWebRequest方式

private string GetHttpWebRequest(string url){  Uri uri = new Uri(url);  HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(uri);  myReq.UserAgent = "User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705";  myReq.Accept = "*/*";  myReq.KeepAlive = true;  myReq.Headers.Add("Accept-Language", "zh-cn,en-us;q=0.5");  HttpWebResponse result = (HttpWebResponse)myReq.GetResponse();  Stream receviceStream = result.GetResponseStream();  StreamReader readerOfStream = new StreamReader(receviceStream, System.Text.Encoding.GetEncoding("utf-8"));  string strHTML = readerOfStream.ReadToEnd();  readerOfStream.Close();  receviceStream.Close();  result.Close();  return strHTML;}

注意:“utf-8”應與指定網頁的編碼對應。
總結
HttpWebRequest 方式最復雜,但確提供了更多的選擇性。
有的網站檢測客戶端的UserAgent!如163.com,如果使用WebClient WebRequest方式獲取,將獲取到的是錯誤提示頁面的內容。
HttpWebRequest沒有這個問題。
測試環境:WIN2003 + VS2005 + C# + winForm

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日韩一区电影 | 国产成人久久精品一区二区三区 | 国产精品久久国产精麻豆99网站 | 超级碰在线视频 | 日韩午夜在线观看 | 蜜桃视频精品 | 亚洲另类视频 | 9191视频 | 欧美激情精品久久久久 | 天天操天天插 | 亚洲国产欧美日韩 | 免费视频一区 | 日本天天色 | 美女主播精品视频一二三四 | 亚洲精品电影在线观看 | 国产日韩精品一区二区 | 超碰3| 不卡视频一区 | 色呦呦一区 | 欧美偷偷操| 中文字幕亚洲欧美 | 国产福利精品一区二区三区 | 国产福利在线视频 | 亚洲精品成人 | 激情视频一区二区三区 | 日韩欧美亚洲 | 国产精品一区人伦免视频播放 | 2021狠狠干| 欧美国产视频一区 | 欧美一区二区三区四区五区 | 美女黄色免费网站 | 日本中文字幕在线视频 | www.一区 | 亚洲欧美日韩在线 | 欧美色成人 | 不卡视频一区二区三区 | 亚洲午夜电影在线 | 日韩一区二区在线视频 | 欧美精品久久久久久久监狱 | 日韩欧美一区二区在线观看 | 成人免费淫片aa视频免费 |