自己动手写网络爬虫

节选

[

《自己动手写网络爬虫》介绍了网络爬虫开发中的关键问题与Java实现。主要包括从互联网获取信息与提取信息和对Web信息挖掘等内容。《自己动手写网络爬虫》在介绍基本原理的同时注重辅以具体代码实现来帮助读者加深理解,书中部分代码甚至可以直接使用。《自己动手写网络爬虫》适用于有Java程序设计基础的开发人员。同时也可以作为计算机相关专业本科生或研究生的参考教材。

]

相关资料

[

插图:代表主机ftp.yoyodyne.com的根目录。爬虫最主要的处理对象就是URL,它根据URL地址取得所需要的文件内容,然后对它进行进一步的处理。因此,准确地理解URL对理解网络爬虫至关重要。从下一节开始,我们将详细地讲述如何根据URL地址来获得网页内容。1.1.2 通过指定的URL抓取网页内容上一节详细介绍了URL的构成,这一节主要阐述如何根据给定的URL来抓取网页。所谓网页抓取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地。类似于使用程序模拟IE浏览器的功能,把URL作为HTTP请求的内容发送到服务器端,然后读取服务器端的响应资源。Java语言是为网络而生的编程语言,它把网络资源看成是一种文件,它对网络资源的访问和对本地文件的访问一样方便。它把请求和响应封装为流。因此我们可以根据相应内容,获得响应流,之后从流中按字节读取数据。例如,java.net.URL类可以对相应的Web服务器发出请求并且获得响应文档。

]

本书特色

[

《自己动手写网络爬虫》是国内**本专门讲解网络爬虫开发的书籍,介绍如何应用云计算架构开发分布式爬虫。猎兔搜索工程师多年项目经验总结深入介绍Web数据挖掘实现过程光盘中提供了高效的代码解决方案案例均使用流行的Java语言编写

]

目录

第1篇 自己动手抓取数据第1章 全面剖析网络爬虫 31.1 抓取网页 41.1.1 深入理解URL 41.1.2 通过指定的URL抓取网页内容 61.1.3 Java网页抓取示例 81.1.4 处理HTTP状态码 101.2 宽度优先爬虫和带偏好的爬虫 111.2.1 图的宽度优先遍历 121.2.2 宽度优先遍历互联网 131.2.3 Java宽度优先爬虫示例 151.2.4 带偏好的爬虫 221.2.5 Java带偏好的爬虫示例 231.3 设计爬虫队列 241.3.1 爬虫队列 241.3.2 使用Berkeley DB构建爬虫队列 291.3.3 使用Berkeley DB 构建爬虫队列示例 301.3.4 使用布隆过滤器构建Visited表 361.3.5 详解Heritrix爬虫队列 391.4 设计爬虫架构 461.4.1 爬虫架构 461.4.2 设计并行爬虫架构 471.4.3 详解Heritrix爬虫架构 521.5 使用多线程技术提升爬虫性能 551.5.1 详解Java多线程 551.5.2 爬虫中的多线程 591.5.3 一个简单的多线程爬虫实现 601.5.4 详解Heritrix多线程结构 611.6 本章小结 64第2章 分布式爬虫 692.1 设计分布式爬虫 702.1.1 分布式与云计算 702.1.2 分布式与云计算技术在爬虫中的应用——浅析Google的云计算架构 712.2 分布式存储 722.2.1 从Ralation_DB到key/value存储 722.2.2 Consistent Hash算法 742.2.3 Consistent Hash代码实现 792.3 Google的成功之道——GFS 802.3.1 GFS详解 802.3.2 开源GFS——HDFS 842.4 Google网页存储秘诀——BigTable 882.4.1 详解BigTable 882.4.2 开源BigTable——HBase 932.5 Google的成功之道——MapReduce算法 982.5.1 详解MapReduce算法 1002.5.2 MapReduce容错处理 1012.5.3 MapReduce实现架构 1022.5.4 Hadoop中的MapReduce简介 1042.5.5 wordCount例子的实现 1052.6 Nutch中的分布式 1092.6.1 Nutch爬虫详解 1092.6.2 Nutch中的分布式 1162.7 本章小结 118第3章 爬虫的”方方面面” 1213.1 爬虫中的”黑洞” 1223.2 限定爬虫和主题爬虫 1223.2.1 理解主题爬虫 1223.2.2 Java主题爬虫 1283.2.3 理解限定爬虫 1303.2.4 Java限定爬虫示例 1363.3 有”道德”的爬虫 1523.4 本章小结 155第2篇 自己动手抽取Web内容第4章 “处理”HTML页面 1594.1 征服正则表达式 1604.1.1 学习正则表达式 1604.1.2 Java正则表达式 1644.2 抽取HTML正文 1694.2.1 了解HtmlParser 1694.2.2 使用正则表达式抽取示例 1724.3 抽取正文 1794.4 从JavaScript中抽取信息 1944.4.1 JavaScript抽取方法 1954.4.2 JavaScript抽取示例 1974.5 本章小结 199第5章 非HTML正文抽取 2015.1 抽取PDF文件 2025.1.1 学习PDFBox 2025.1.2 使用PDFBox抽取示例 2065.1.3 提取PDF文件标题 2075.1.4 处理PDF格式的公文 2085.2 抽取Office文档 2125.2.1 学习POI 2125.2.2 使用POI抽取Word示例 2135.2.3 使用POI抽取PPT 示例 2155.2.4 使用POI抽取Excel示例 2155.3 抽取RTF 2185.3.1 开源RTF文件解析器 2195.3.2 实现一个RTF文件解析器 2195.3.3 解析RTF示例 2235.4 本章小结 229第6章 多媒体抽取 2316.1 抽取视频 2326.1.1 抽取视频关键帧 2326.1.2 Java视频处理框架 2336.1.3 Java视频抽取示例 2376.2 音频抽取 2496.2.1 抽取音频 2496.2.2 学习Java音频抽取技术 2536.3 本章小结 256第7章 去掉网页中的”噪声” 2577.1 “噪声”对网页的影响 2587.2 利用”统计学”消除”噪声” 2597.2.1 网站风格树 2627.2.2 “统计学去噪”Java实现 2707.3 利用”视觉”消除”噪声” 2747.3.1 “视觉”与”噪声” 2747.3.2 “视觉去噪”Java实现 2757.4 本章小结 279第3篇 自己动手挖掘Web数据第8章 分析Web图 2838.1 存储Web”图” 2848.2 利用Web”图”分析链接 2938.3 Google的秘密——PageRank 2938.3.1 深入理解PageRank算法 2938.3.2 PageRank算法的Java实现 2978.3.3 应用PageRank进行链接分析 3008.4 PageRank 的兄弟HITS 3018.4.1 深入理解HITS算法 3018.4.2 HITS算法的Java实现 3028.4.3 应用HITS进行链接分析 3138.5 PageRank与HITS的比较 3148.6 本章小结 315第9章 去掉重复的”文档” 3179.1 何为”重复”的文档 3189.2 去除”重复”文档——排重 3189.3 利用”语义指纹”排重 3189.3.1 理解”语义指纹” 3209.3.2 “语义指纹”排重的Java实现 3219.4 SimHash排重 3219.4.1 理解SimHash 3229.4.2 SimHash排重的Java实现 3239.5 分布式文档排重 3309.6 本章小结 331第10章 分类与聚类的应用 33310.1 网页分类 33410.1.1 收集语料库 33410.1.2 选取网页的”特征” 33510.1.3 使用支持向量机进行网页分类 33810.1.4 利用URL地址进行网页分类 34010.1.5 使用AdaBoost进行网页分类 34010.2 网页聚类 34310.2.1 深入理解DBScan算法 34310.2.2 使用DBScan算法聚类实例 34410.3 本章小结 346

封面

自己动手写网络爬虫

书名:自己动手写网络爬虫

作者:罗刚

页数:346页

定价:¥43.0

出版社:清华大学出版社

出版日期:2010-10-01

ISBN:9787302236474

PDF电子书大小:109MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注