【转载】ASP.NET以Post方式抓取远程网页内容类似…
2019-03-13 23:28:59来源:博客园 阅读 ()
使用HttpWebRequest等Http相关类,可以在应用程序中或者网站中模拟浏览器发送Post请求,在请求带入相应的Post参数值,而后请求回远程网页信息。实现这一功能也很简单,主要是依靠HttpWebRequest、HttpWebResponse、Stream等几个类来完成。
首先来看下MSDN上对这几个类的定义:
HttpWebRequest类:提供用于在预先定义的属性和方法支持的WebRequest和用于附加属性和方法,使用户直接使用HTTP服务器进行交互。
HttpWebResponse类:包含对WebResponse类的属性和方法的HTTP特定用法的支持。该HttpWebResponse类用于构建发送HTTP请求HTTP独立的客户端应用程序和接收HTTP响应。
Stream类:所有流的抽象基类。流是字节序列的抽象,例如文件,输入/输出设备,进程间通信管道或TCP / IP套接字。的流类及其派生类提供这些不同类型的输入和输出的的一般视图,并分离从操作系统的具体细节和基础设备编程器。
下面直接贴代码了,已经将该功能封装成一个方法。
/// <summary> /// 以POST方式抓取远程页面内容 /// </summary> /// <param name="postData">参数列表</param> public static string Post_Http(string url, string postData, string encodeType) { string strResult = null; try { Encoding encoding = Encoding.GetEncoding(encodeType); byte[] POST = encoding.GetBytes(postData); HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(url); myRequest.Method = "POST"; myRequest.ContentType = "application/x-www-form-urlencoded"; myRequest.ContentLength = POST.Length; Stream newStream = myRequest.GetRequestStream(); newStream.Write(POST, 0, POST.Length); //设置POST newStream.Close(); HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse(); StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.Default); strResult = reader.ReadToEnd(); } catch (Exception ex) { strResult = ex.Message; } return strResult; }
备注:此文章转载自ASP.NET以Post方式抓取远程网页内容类似爬虫功能_IT技术小趣屋。
原文链接:https://www.cnblogs.com/xu-yi/p/10525109.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- asp.net源程序编译为dll文件并调用的实现过程 2020-03-29
- Asp.net MVC SignalR来做实时Web聊天实例代码 2020-03-29
- ASP.NET MVC中jQuery与angularjs混合应用传参并绑定数据 2020-03-29
- Asp.Net中WebForm的生命周期 2020-03-29
- ASP.NET使用Ajax返回Json对象的方法 2020-03-23
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash