注册 登陆

C#实现web信息自动抓取

C#代码
  1. ASP.Net (GetWebcontent.aspx)      
  2.      
  3.      
  4.      
  5. <%@ Page Language="C#" %>      
  6.      
  7. <%@ Import Namespace="System.Net" %>      
  8.      
  9. <%@ Import Namespace="System.Text" %>      
  10.      
  11. <script runat=server>      
  12.      
  13.    //***********************************************************      
  14.      
  15.    //*                    
  16.      
  17.    //*    使用ASP.Net实现网站小偷的程序           
  18.      
  19.    //*       Written by 笑笑 2005-12-11             
  20.      
  21.    //*       网址:http://blog.hnce.net             
  22.      
  23.    //*       Email:hedongyang@gmail.com QQ:5364083          
  24.      
  25.    //*                     
  26.      
  27.    //***********************************************************      
  28.      
  29. void Page_Load(Object sender , EventArgs e)       
  30.      
  31. {      
  32.      
  33.    string strurl="http://blog.hnce.net";    //欲获取的网页地址      
  34.      
  35.          
  36.      
  37.    WebClient myWebClient=new WebClient();    //创建WebClient实例myWebClient      
  38.      
  39.          
  40.      
  41.    //获取或设置用于对向 Internet 资源的请求进行身份验证的网络凭据。      
  42.      
  43.    myWebClient.Credentials=CredentialCache.DefaultCredentials;      
  44.      
  45.          
  46.      
  47.    //从资源下载数据并返回字节数组。(加@是因为网址中间有"/"符号)      
  48.      
  49.    byte[] pagedata=myWebClient.DownloadData(strurl);      
  50.      
  51.          
  52.      
  53.    //以下两句每次只要使用一条即可,功能是一样是用来转换字符集,根据获取网站页面的字符编码选择      
  54.      
  55.    //string result=Encoding.Default.GetString(pagedata);              
  56.      
  57.    //如果获取网站页面采用的是GB2312,则使用这句      
  58.      
  59.    string result=Encoding.UTF8.GetString(pagedata);       
  60.      
  61.    //如果获取网站页面采用的是UTF-8,则使用这句       
  62.      
  63.    //因为我的博客使用了UTF-8编码,所以在这里我使用这句      
  64.      
  65.    Response.Write(result);   //在WEB页中显示获取的内容      
  66.      
  67. }      
  68.      
  69. </Script>      
  70.      
  71. <html>      
  72.      
  73. <head>      
  74.      
  75. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />      
  76.      
  77. <title>无标题文档</title>      
  78.      
  79. </head>      
  80.      
  81.      
  82.      
  83. <body>      
  84.      
  85. </body>      
  86.      
  87. </html>      
  88.      
  89.      
  90.      
  91. C# (GetWebcontent.cs)      
  92.      
  93.      
  94.      
  95. /*      
  96.      
  97. *********************************************************      
  98.      
  99. *             
  100.      
  101. *  使用C#实现网站小偷的程序         
  102.      
  103. *       Written by 笑笑 2005-12-11         
  104.      
  105. *       网址:http://blog.hnce.net         
  106.      
  107. *       Email:hedongyang@gmail.com QQ:5364083       
  108.      
  109. *             
  110.      
  111. *********************************************************      
  112.      
  113. */      
  114.      
  115. using System;      
  116.      
  117. using System.Net;      
  118.      
  119. using System.Text;      
  120.      
  121.      
  122.      
  123. class GetWebcontent      
  124.      
  125. {      
  126.      
  127.  public static void Main()      
  128.      
  129.  {                 
  130.      
  131.      try     
  132.      
  133.      {      
  134.      
  135.      
  136.      
  137.   WebClient MyWebClient = new WebClient();      
  138.      
  139.      
  140.      
  141.   MyWebClient.Credentials = CredentialCache.DefaultCredentials;      
  142.      
  143.      
  144.      
  145.   Byte[] pageData = MyWebClient.DownloadData("http://blog.hnce.net");      
  146.      
  147.   string pageHtml = Encoding.UTF8.GetString(pageData);      
  148.      
  149.   Console.WriteLine(pageHtml);      
  150.      
  151.      
  152.      
  153.      }       
  154.      
  155.      catch (WebException webEx)      
  156.      
  157.      {      
  158.      
  159.   Console.Write(webEx.ToString());      
  160.      
  161.      }      
  162.      
  163.  }      
  164.      
  165. }    

« 上一篇 | 下一篇 »