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(涂聚文)
  • 相关阅读:
    jQuery点击事件解绑
    js添加key为数字的对象,通过类似于通过访问数组的中括号形式访问对象属性
    JS区分中英文字符的两种方法: 正则和charCodeAt()方法
    js时间比较,获取n天后(前)的日期
    js延迟函数
    @RequestBody和@ModelAttribute注解
    HttpServletRequest
    java异常处理之throw, throws,try和catch
    js去除空格,判断是否包含
    CSS :focus 选择器
  • 原文地址:https://www.cnblogs.com/geovindu/p/2041522.html
Copyright © 2011-2022 走看看