随笔分类 -  网络爬虫系列

MD5算法-爬虫学习(五)
摘要:在实现爬虫的时候,我们使用Hash结构去存储我们用过的URL的时候,有些URL可能长度很长,为了更加节省空间,我们就要对URL进行压缩,帮它减减肥,这个我们介绍这个MD5算法,可以对URL进行有效的压缩。 下面我们会讲讲MD5算法的一些细节,不过我们大可不必在意,我们只需要知道,我们对一个很长很长的字符串进行MD5压缩,返回的是一个128位整数,这个字符串就是原字符串的唯一标示符,就好像是我们的身份证一样,通过这个id就可以标识唯一的你。 MD5算法描述:MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过一系列的处理后,算法的输出有4个32位分组组成,将... 阅读全文

posted @ 2014-01-03 00:04 进击的Ray_xujianguo 阅读(2442) 评论(6) 推荐(1) 编辑

宽度优先爬虫-爬虫学习(四)
摘要:我们用爬虫去遍历互联网的时候,可以将互联网看作是一个有向图,链接就是图中的有向边,所以我们可以利用图的遍历方法去遍历这个巨大的互联网,图的遍历有宽度优先遍历和深度优先遍历。但是深度优先遍历可能会在遍历的时候遍历过深,导致浪费资源,所以我们这里采用宽度优先遍历。 下面使用Java实现一个简单的宽度优先爬虫的例子,其中用到来HttpClient和HtmlParser两个开源的工具包。/** * @introduction 队列 保留将要访问的URL * @author Guo */public class Queue { /** * @introduction 底层使用Lin... 阅读全文

posted @ 2013-12-31 22:46 进击的Ray_xujianguo 阅读(1485) 评论(3) 推荐(0) 编辑

HtmlParser的使用-爬虫学习(三)
摘要:关于这个HtmlParser的学习资料,网上真的很匮乏,这个好用的东西不要浪费啊,所以我在这里隆重的介绍一下。 HtmlParser是一个用来解析HTML文件的Java包,主要用于转换盒抽取两个方面。 利用HtmlParser,你可以实现下面的内容的抽取: a.文本抽取 b.链接抽取 c.资源抽取。可以搜集到图像和声音文件等资源 d.链接检查。保证链接是有用的 e.站点检查,可以查看页面不同版本之间的差异 利用HtmlParser,你可以利用它的转换功能,主要体现在几个方面: a.URL重写。能够修正页面中的错误链接 b.广告清楚。清除页面中的广告内容和指向广告的链接 ... 阅读全文

posted @ 2013-12-19 15:56 进击的Ray_xujianguo 阅读(2366) 评论(7) 推荐(4) 编辑

正则表达式-爬虫学习(二)
摘要:我们在做爬虫的时候,要提取网页的信息,一个网页中的信息可能有很多,我们要去筛选,例如我们要获取一个网页中的所有子链接,这个就需要我们用正则表达式去匹配,匹配后得到的数据我们要的东西了,下面简单介绍一下,学过的可以当复习,没学过的就好好看看。 正则表达式:是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串,简单说,就是我们写个模板,然后去匹配字符串。 下面我们来看看一些基本的正则表达式的语法: \:将下个字符标记为一个特殊的字符、一个原义字符、一个向后引用或者一个八进制转义符例如“\n”就是匹配一个换行符。 ^:匹配开始位置,^(a)这个就匹配开头必须为a。 $:匹... 阅读全文

posted @ 2013-12-17 18:47 进击的Ray_xujianguo 阅读(1427) 评论(0) 推荐(0) 编辑

HttpClient的使用-爬虫学习(一)
摘要:Apache真是伟大,为我们提供了HttpClient.jar,这个HttpClient是客户端的http通信实现库,这个类库的作用是接受和发送http报文,引进这个类库,我们对于http的操作会变得简单一些,事不宜迟,赶快介绍。 在将这个HttpClient之前,我们必须弄清两个概念:URL和URI URI(Universal Resource Identify),通用资源标识符,而URL(Uniform Resource Locator),统一资源定位符,两个有什么区别,其实就是范围大小的问题,URI是包含URL的,URI由访问资源的命名机制、存放资源的主机名、资源自身的路径组成,... 阅读全文

posted @ 2013-12-16 13:19 进击的Ray_xujianguo 阅读(7341) 评论(5) 推荐(8) 编辑

导航