没有合适的资源?快使用搜索试试~ 我知道了~
抓取.docx抓取.docx
需积分: 0 5 下载量 122 浏览量
2010-10-21
11:14:14
上传
评论
收藏 17KB DOCX 举报
温馨提示
试读
3页
抓取.docx抓取.docx抓取.docx抓取.docx
资源详情
资源评论
资源推荐
相信所有个人网站的站长都有抓取别人数据的经历吧,目前抓取别人网站数据的方式无非两种方式:
一、使用第三方工具,其中最著名的是火车头采集器,在此不做介绍。
二、自己写程序抓取,这种方式要求站长自己写程序,可能对对站长的开发能力有所要求了。
本人起初也曾试着用第三方的工具抓取我所需要的数据,由于网上的流行的第三方工具不是不符合我的
要求,就是过于复杂,我一时没有搞明白怎么用,后来索性决定自己写吧,现在本人基本上半天可以搞定
一个网站(只是程序开发时间,不包括数据抓取的时间)。
经过一段时间的数据抓取生涯,也曾遇到了很多困难,其中最常见的一个就是关于分页数据的抓取问
题,原因在于分数据分页的形式有很多种,下面我主要针对三种形式介绍一下抓取分页数据的方法,此类
文章虽然在网上见过很多,但每次拿别人的代码总也总是有各种各样的问题,下面各种方式的代码都是能
正确执行,并且我目前也正在使用中的。本文中代码实现是用 C#语言来实现的,我想其他语言原理大致
相同
下面切入正题:
第一种方式:URL 地址中包含分页信息,这种形式是最简单的,这种形式使用第三方工具抓取也很简
单,基本上不用写代码,对于我这种宁可自己花个半天时间写代码也懒得学第三方工具的人,还是通过自
己写代码实现了;
这种方式就是通过循环生成数据分页的 URL 地址 如: 这样通过 HttpWebRequest 访问对应 URL 地
址,返回对应页面的 html 文本,接下来的任务就是对字符串的解析,将需要的内容保存到本地数据库内;
抓取的代码可参考下面:
public string GetResponseString(string url)
{
string _StrResponse = "";
HttpWebRequest _WebRequest = (HttpWebRequest)WebRequest.Create(url);
_WebRequest.UserAgent = "MOZILLA/4.0 (COMPATIBLE; MSIE 7.0; WINDOWS NT
5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022;
.NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";
_WebRequest.Method = "GET";
WebResponse _WebResponse = _WebRequest.GetResponse();
StreamReader _ResponseStream = new
StreamReader(_WebResponse.GetResponseStream(),
System.Text.Encoding.GetEncoding("gb2312"));
_StrResponse = _ResponseStream.ReadToEnd();
_WebResponse.Close();
_ResponseStream.Close();
return _StrResponse;
}
BigMouth•
- 粉丝: 3
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0