zoukankan      html  css  js  c++  java
  • ASP.NET获取任意网页HTML代码

    利用.NET的 WebClient类 和 WebRequest类,我们可以很容易地得到给定URL地址的源代码。主要代码如下:

    GetPage.aspx:

    程序代码

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="GetPage.aspx.cs" Inherits="GetPage" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>获取任意网页HTML代码</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div style="text-align:center;">
            <asp:TextBox ID="UrlText" runat="server" Width="400" Text="http://www.gsdesign.cn"></asp:TextBox>
            <asp:Button ID="WebClientButton" runat="server" Text="用WebClient得到" OnClick="WebClientButton_Click" />
            <asp:Button ID="WebRequestButton" runat="server" Text="用WebRequest得到" OnClick="WebRequestButton_Click" />
            <br />
            <asp:TextBox ID="ContentHtml" runat="server" Width="100%" Height="360" TextMode="MultiLine"></asp:TextBox>  
        </div>
        </form>
    </body>
    </html>



    GetPage.aspx.cs:

    程序代码

    using System;
    using System.IO;
    using System.Web;
    using System.Web.UI;
    using System.Text;
    using System.Net;

    public partial class GetPage : System.Web.UI.Page
    {
        private string pageUrl = "";

        protected void Page_Load(object sender, EventArgs e)
        {

        }

        /// <summary>
        /// 使用WebClient方法
        /// </summary>
        protected void WebClientButton_Click(object sender, 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, Encoding.Default);
            ContentHtml.Text = sr.ReadToEnd();
            resStream.Close();
            */

            wc.Dispose();
        }

        /// <summary>
        /// 使用WebRequest方法
        /// </summary>
        protected void WebRequestButton_Click(object sender, EventArgs e)
        {
            pageUrl = UrlText.Text;
            WebRequest wrequest = WebRequest.Create(pageUrl);
            WebResponse wresponse = wrequest.GetResponse();
            Stream resStream = wresponse.GetResponseStream();
            StreamReader sr = new StreamReader(resStream, Encoding.Default);
            ContentHtml.Text = sr.ReadToEnd();
            resStream.Close();
            sr.Close();
        }
    }
    转:http://blog.csdn.net/luochengbang/archive/2008/03/20/2199323.aspx
  • 相关阅读:
    MapXtreme实用技巧与源码10例
    在MapXTreme2004中创建自定义工具
    Mapinfo的几个文件的具体含义及内容是什么?
    MapXtreme打包成功的经验
    OCP最新题库收集,新版052考题及答案整理19
    【OCP|052】052考试题库又变了,最新052题库收集整理第15题
    OCP 052新加的考试题收集整理第20道
    【ocp 052又加新题了】052新加的考试题及答案整理第13题
    【OCP052】新版052最新题库及答案整理第14题
    OCP换考题了,052新考题及答案整理第17题
  • 原文地址:https://www.cnblogs.com/ganmk/p/1213315.html
Copyright © 2011-2022 走看看