如何抓取HTML页面数据

my903687142 2013-02-18 11:00:00
HTML页面数据已经抓下来了,但其中里面的通过异步加载的数据如何抓取出来呢?
下面这是抓取HTMl内容的代码:
public string getinfo(string url)
{
string rl;
WebRequest myReq = WebRequest.Create(url);
WebResponse myRes = myReq.GetResponse();
Stream resStream = myRes.GetResponseStream();
//这里的编码根据自己的需要可以改改
StreamReader sr = new StreamReader(resStream, System.Text.Encoding.UTF8);
StringBuilder sb = new StringBuilder();
while ((rl = sr.ReadLine()) != null)
{
sb.Append(rl);
}
myRes.Close();
return sb.ToString();
}
...全文
902 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
web好像就是提交请求,get or post
用Firebug或者Chrome的F12都可以监视到请求
例如

可以根据里面的据体参数模拟请求提取内容
Icedmilk 2013-02-18
  • 打赏
  • 举报
回复
异步的数据一般也是 HTTP GET 或 HTTP POST 你需要一个抓包工具分析一下整个页面加载过程中你的浏览器的所有请求 然后模拟一下就可以了 这种页面你一个request是不行的,肯定要多个 抓包工具可以用微软的 network monitor
鸭梨山大帝 2013-02-18
  • 打赏
  • 举报
回复
无论异步和同步都只是针对客户端体验时的不同说法,都逃脱不了HTTP的交互行为. WebResponse myRes = myReq.GetResponse(); 你这里获取的是request提交之后的response的内容. 因此,你需要用HTTP嗅探工具去监控异步提交的请求内容与格式,然后模拟这种内容格式提交,再获取response. 推荐fiddler(独立工具)/firebug(firefox插件)/chrome开发工人工具等
my903687142 2013-02-18
  • 打赏
  • 举报
回复
怎么弄啊,指点一二噻
  • 打赏
  • 举报
回复
兄弟,我是专门做数据抓取的。 ======================================================= .NET快速开发整合框架(RDIFramework.NET),基于.NET的快速开发、整合框架,给用户和开发者最佳的.Net框架部署方案。 平台博客:[CNBLOGS]http://www.cnblogs.com/huyong [CSDN]http://blog.csdn.net/chinahuyong 交流QQ:406590790 (请注明:CSDN) 平台微博:http://t.qq.com/yonghu86 邮件交流:406590790@qq.com
鸭梨山大帝 2013-02-18
  • 打赏
  • 举报
回复
如果这个都复杂了,你就不用写这个HTML抓取数据的功能了. 本身就需要分析提交内容与格式的.
引用 6 楼 my903687142 的回复:
这个分析太复杂 了,不好理解
my903687142 2013-02-18
  • 打赏
  • 举报
回复
这个分析太复杂 了,不好理解

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧