zoukankan      html  css  js  c++  java
  • C# 获取源代码

    1 using System;
    2 using System.Data;
    3 using System.Configuration;
    4 using System.Web;
    5 using System.Web.Security;
    6 using System.Web.UI;
    7 using System.Web.UI.WebControls;
    8 using System.Web.UI.WebControls.WebParts;
    9 using System.Web.UI.HtmlControls;
    10 using System.Net;
    11 using System.Text;
    12 using System.IO;
    13
    14 public partial class _Default : System.Web.UI.Page
    15 {
    16 /// <summary>
    17 /// 塗聚文
    18 /// 涂聚文
    19 /// </summary>
    20 /// <param name="sender"></param>
    21 /// <param name="e"></param>
    22 protected void Page_Load(object sender, EventArgs e)
    23 {
    24 //获取URL地址
    25 string url = Request.Url.ToString();
    26 txtUrl.Text = url;
    27 //获取IP地址
    28 string ips= Request.UserHostAddress.ToString();
    29 txtIp.Text = ips;
    30 //浏览器
    31 string fr = Request.Browser.Type.ToString();
    32 txtbrows.Text = fr;
    33 string cp ;//= Request.UserAgent.ToString()
    34 //操作系统
    35 cp=GetOSNameByUserAgent(Request.UserAgent.ToString());
    36 txtcp.Text = cp;
    37 //浏览器版本号
    38 //this.txtbrows.Text = Request.Browser.ClrVersion.ToString();
    39 // txtUrl.Text = Request.ServerVariables["http_referer"];
    40 }
    41
    42 protected void btnGet_Click(object sender, EventArgs e)
    43 {
    44 txtUrl.Text = Request.ServerVariables["http_referer"];//ServerViables["http_referer"];
    45 string strurl= txtUrl.Text.ToString(); //欲获取的网页地址 要 http://
    46 WebClient myWebClient = new WebClient(); //创建WebClient实例myWebClient
    47
    48 //获取或设置用于对向 Internet 资源的请求进行身份验证的网络凭据。
    49 myWebClient.Credentials = CredentialCache.DefaultCredentials;
    50 // Request.ServerVariables("HTTP_HOST");
    51 //从资源下载数据并返回字节数组。(加@是因为网址中间有"/"符号)
    52 byte[] pagedata = myWebClient.DownloadData(@strurl);
    53
    54 string result = Encoding.Default.GetString(pagedata); //如果获取网站页面采用的是GB2312,则使用这句
    55 //string result = Encoding.UTF8.GetString(pagedata); //如果获取网站页面采用的是UTF-8,则使用这句
    56 Response.Write(result); //在WEB页中显示获取的内容
    57 Panel1.Visible = false;
    58
    59 }
    60 /// <summary>
    61 /// 根据 User Agent 获取操作系统名称
    62 /// </summary>
    63 private string GetOSNameByUserAgent(string userAgent)
    64 {
    65 string osVersion = "未知";
    66 if (userAgent.Contains("NT 6.2"))
    67 {
    68 osVersion = "Windows 8/Windows Server 2012";
    69 }
    70 else if (userAgent.Contains("NT 6.1"))
    71 {
    72 osVersion = "Windows 7/Windows Server 2008 R2";
    73 }
    74 else if (userAgent.Contains("NT 6.0"))
    75 {
    76 osVersion = "Windows Vista/Server 2008";
    77 }
    78 else if (userAgent.Contains("NT 5.2"))
    79 {
    80 osVersion = "Windows Server 2003";
    81 }
    82 else if (userAgent.Contains("NT 5.1"))
    83 {
    84 osVersion = "Windows XP";
    85 }
    86 else if (userAgent.Contains("NT 5"))
    87 {
    88 osVersion = "Windows 2000";
    89 }
    90 else if (userAgent.Contains("NT 4"))
    91 {
    92 osVersion = "Windows NT4";
    93 }
    94 else if (userAgent.Contains("Me"))
    95 {
    96 osVersion = "Windows Me";
    97 }
    98 else if (userAgent.Contains("98"))
    99 {
    100 osVersion = "Windows 98";
    101 }
    102 else if (userAgent.Contains("95"))
    103 {
    104 osVersion = "Windows 95";
    105 }
    106 else if (userAgent.Contains("Mac"))
    107 {
    108 osVersion = "Mac";
    109 }
    110 else if (userAgent.Contains("Unix"))
    111 {
    112 osVersion = "UNIX";
    113 }
    114 else if (userAgent.Contains("Linux"))
    115 {
    116 osVersion = "Linux";
    117 }
    118 else if (userAgent.Contains("SunOS"))
    119 {
    120 osVersion = "SunOS";
    121 }
    122 return osVersion;
    123 }
    124 /// <summary>
    125
    126 /// 获取源代码
    127
    128 /// </summary>
    129
    130 /// <param name="url"></param>
    131
    132 /// <param name="encoding"></param>
    133
    134 /// <returns></returns>
    135
    136 public static string GetPage(string url, Encoding encoding)
    137 {
    138
    139 HttpWebRequest request = null;
    140
    141 HttpWebResponse response = null;
    142
    143 StreamReader reader = null;
    144
    145 try
    146 {
    147
    148 request = (HttpWebRequest)WebRequest.Create(url);
    149
    150 request.UserAgent = "www.dupcit.com";
    151
    152 request.Timeout = 20000;
    153
    154 request.AllowAutoRedirect = false;
    155
    156
    157
    158 response = (HttpWebResponse)request.GetResponse();
    159
    160 if (response.StatusCode == HttpStatusCode.OK && response.ContentLength < 1024 * 1024)
    161 {
    162
    163 reader = new StreamReader(response.GetResponseStream(), encoding);
    164
    165 string html = reader.ReadToEnd();
    166
    167
    168
    169 return html;
    170
    171 }
    172
    173 }
    174
    175 catch
    176 {
    177
    178 }
    179
    180 finally
    181 {
    182
    183
    184
    185 if (response != null)
    186 {
    187
    188 response.Close();
    189
    190 response = null;
    191
    192 }
    193
    194 if (reader != null)
    195
    196 reader.Close();
    197
    198
    199
    200 if (request != null)
    201
    202 request = null;
    203
    204
    205
    206 }
    207
    208
    209
    210 return string.Empty;
    211
    212 }
    213 }
    哲学管理(学)人生, 文学艺术生活, 自动(计算机学)物理(学)工作, 生物(学)化学逆境, 历史(学)测绘(学)时间, 经济(学)数学金钱(理财), 心理(学)医学情绪, 诗词美容情感, 美学建筑(学)家园, 解构建构(分析)整合学习, 智商情商(IQ、EQ)运筹(学)成功.---Geovin Du(涂聚文)
  • 相关阅读:
    [转]asp.net页面缓存技术
    UL和LI在div中的高度的IE6下兼容性
    jquery制作的横向图片滚动带横向滚动条TackerScroll
    电脑可以上网,但是qq登陆不上去?
    Introduction to discrete event system学习笔记4.6
    Introduction to Discrete event system学习笔记4.9
    Introduction to discrete event systemsstudy 4.5
    Symbolic synthesis of obserability requirements for diagnosability B.Bittner,M.Bozzano,A.Cimatti,and X.Olive笔记4.16
    Introduction to discrete event system学习笔记4.8pm
    Introduction to discrete event system学习笔记 4.8
  • 原文地址:https://www.cnblogs.com/geovindu/p/2041522.html
Copyright © 2011-2022 走看看