ASP.NET使用HttpWebRequest读取远程网页源代码

读取远程网页能做什么就不用多说了吧,做小偷程序或是采集,也就诸如此类了吧。

public string GetPage(string url)
{

  HttpWebRequest request = null;

  HttpWebResponse response = null;

  StreamReader reader = null;

  try
  {

    request = (HttpWebRequest)WebRequest.Create(url);

    request.Timeout = 20000;

    request.AllowAutoRedirect = false;

    response = (HttpWebResponse)request.GetResponse();

    if (response.StatusCode == HttpStatusCode.OK && response.ContentLength < 1024 * 1024)
    {

      reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.Default);

      string html = reader.ReadToEnd();

      return html;

    }

  }

  catch
  {

  }

  finally
  {

    if (response != null)
    {

      response.Close();

      response = null;

    }

    if (reader != null)

      reader.Close();

    if (request != null)

      request = null;

  }

  return string.Empty;
}
(0)

相关推荐

  • asp.net 抓取网页源码三种实现方法

    方法1 比较推荐 /// <summary> /// 用HttpWebRequest取得网页源码 /// 对于带BOM的网页很有效,不管是什么编码都能正确识别 /// </summary> /// <param name="url">网页地址" </param> /// <returns>返回网页源文件</returns> public static string GetHtmlSource2(strin

  • ASP.NET MVC中解析淘宝网页出现乱码问题的解决方法

    最近在解析淘宝中商品的信息,结果出现乱码,如: 原因就是中文字符格式出现冲突,ASP.NET MVC 默认采用utf-8,但是淘宝网页采用gbk. 在网上找了一下,最常用的解决方法就是修改web.config: < system.web> ...... < globalization requestEncoding="gbk" responseEncoding="gbk" culture="zh-CN" fileEncoding

  • asp.net HttpWebRequest自动识别网页编码

    复制代码 代码如下: static string GetEncoding(string url) { HttpWebRequest request = null; HttpWebResponse response = null; StreamReader reader = null; try { request = (HttpWebRequest)WebRequest.Create(url); request.Timeout = 20000; request.AllowAutoRedirect

  • asp.net下获取远程网页的内容之二(downmoon原创)

    本文仅针AD下代理上网的情况: 代码如下: 1.定义变量:  定义变量#region  定义变量 复制代码 代码如下: private    string strFireWallIP          ...{              get              ...{                  return System.Configuration.ConfigurationSettings.AppSettings["strFireWallIP"];        

  • asp.net(c#)做一个网页数据采集工具

    通过这个软件一两天就完成了几千产品数据的录入,可见很多工作不是一味用人工去做,作为一个程序员,就是要让很多让那些经常做重复性的.繁琐的工作中的人解放出来.下面只是写了一些核心代码,而且采集必须要和对应网站相挂钩,作者:郑少群 复制代码 代码如下: //提取产品列表页中产品最终页的网页 private void button1_Click(object sender, EventArgs e) { if (textBox1.Text.Trim() == "" || textBox2.Te

  • HttpWebRequest和HttpWebResponse用法小结

    最近公司拓展市场异常迅猛,数周之类开出去几十套系统,虽然系统名字不一样,但各个内容相似.由于时间紧迫,很多开出去的系统 出现各种神奇的错误,当初虽然有记录错误日志,然而很多客户使用的是自己的服务器和数据库,出了问题我们并不能立即掌握信息, 因此决定做一个捕获所有系统的异常并保存到自家数据库中. 实现思路 在每个系统出写入报告错误代码(找个合理的理由,比如系统免费升级) -> 自家服务器接收并处理错误报告 -> 反馈用户(解决掉BUG就行,不要太声扬) 基础回顾 ---参考msdn 1.Http

  • ASP.NET抓取网页内容的实现方法

    本文实例讲述了ASP.NET抓取网页内容的实现方法.分享给大家供大家参考.具体实现方法如下: 一.ASP.NET 使用HttpWebRequest抓取网页内容 复制代码 代码如下: /// <summary>方法一:比较推荐  /// 用HttpWebRequest取得网页源码  /// 对于带BOM的网页很有效,不管是什么编码都能正确识别  /// </summary>  /// <param name="url">网页地址" </

  • C#中HttpWebRequest的用法详解

    本文实例讲述了C#中HttpWebRequest的用法.分享给大家供大家参考.具体如下: HttpWebRequest类主要利用HTTP 协议和服务器交互,通常是通过 GET 和 POST 两种方式来对数据进行获取和提交.下面对这两种方式进行一下说明: GET 方式: GET 方式通过在网络地址附加参数来完成数据的提交,比如在地址 http://www.jb51.net/?hl=zh-CN 中,前面部分 http://www.jb51.net表示数据提交的网址,后面部分 hl=zh-CN 表示附

  • asp.net中获取远程网页的内容之一(downmoon原创)

    获取远程网页的内容之一(downmoon原创) 一.本机直接上网时: 获取指定远程网页内容#region 获取指定远程网页内容 复制代码 代码如下: /**//// <summary>          /// 获取指定远程网页内容          /// </summary>          /// <param name="strUrl">所要查找的远程网页地址</param>          /// <param nam

  • asp.net 网页编码自动识别代码

    复制代码 代码如下: using System; using System.Net; using System.Text; using System.Text.RegularExpressions; class Program { // 获取网页的HTML内容,根据网页的charset自动判断Encoding static string GetHtml(string url) { return GetHtml(url, null); } // 获取网页的HTML内容,指定Encoding sta

随机推荐