内容简介
第1章 概述
1.1 案例研究:濒危世界遗产地
1.2 有关网络数据质量的一些讨论
1.3 传播、提取和保存网络数据的技术
1.3.1 在网络上传播内容的技术
1.3.2 从Web文档中提取信息的技术
1.3.3 数据保存的技术
1.4 本书的结构
第一部分 网络和数据技术入门
第2章 HTML
2.1 浏览器显示及源代码
2.2 语法规则
2.2.1 标签、元素和属性
2.2.2 树形结构
2.2.3 注释
2.2.4 保留字符和特殊字符
2.2.5 文档类型定义
2.2.6 空格和换行
2.3 标签和属性
2.3.1 锚标签<a>
2.3.2 元数据标签<meta>
2.3.3 外部引用标签<link>
2.3.4 强调标签<b>、<i>和<strong>
2.3.5 段落标签<P>
2.3.6 标题标签<h1>、<h2>、<h3>等
2.3.7 通过<u1>、<o1>和<d1>列举内容
2.3.8 组织型标签<div>和<span>
2.3.9 <form>标签及其同伴
2.3.10 外部脚本标签<script>
2.3.11 表格标签<table>、<tr>、<td>和<th>
2.4 解析
2.4.1 解析简介
2.4.2 丢弃节点
2.4.3 在创建过程中提取信息
小结
延伸阅读
习题
第3章 XML和JSON
3.1 XML文档示例
3.2 XML语法规则
3.2.1 元素和属性
3.2.2 XML结构
3.2.3 命名及特殊字符
3.2.4 注释及字符数据
3.2.5 XML语法总结
3.3 结构良好或合法的XML文档的条件
3.4 XML扩展与技术
3.4.1 命名空间
3.4.2 XML的扩展
3.4.3 示例:RSS
3.4.4 示例:可缩放矢量图
3.5 XML和R的实践
3.5.1 解析XML
3.5.2 对XML文档的基本操作
3.5.3 从XML获取数据框或列表
3.5.4 事件驱动的解析
3.6 JSON文档示例
3.7 JSON语法规则
3.8 JSON和R的实践
小结
延伸阅读
习题
第4章 XPath
4.1 XPath:一种网页查询语言
4.2 用XPath确定节点集
4.2.1 XPath查询的基本结构
4.2.2 节点关系
4.2.3 XPath谓语
4.3 提取节点元素
4.3.1 扩展fun参数
4.3.2 XML命名空间
4.3.3 XPath的辅助性小工具
小结
延伸阅读
习题
第5章 HTTP
5.1 HTTP基础知识
5.1.1 和Web服务器的简短对话
5.1.2 URL的语法
5.1.3 HTTP消息
5.1.4 请求方法
5.1.5 状态码
5.1.6 标头字段
5.2 HTTP的高级特性
5.2.1 身份识别
5.2.2 身份验证
5.2.3 代理
5.3 HTTP之外的协议
5.3.1 HTTP安全协议
5.3.2 FTP
5.4 HTTP实战
5.4.1 libcurl库
5.4.2 基本请求方法
5.4.3 RCurl的底层函数
5.4.4 在多个请求里保持连接
5.4.5 选项
5.4.6 调试
5.4.7 错误处理
5.4.8 用RCurl还是httr呢
小结
延伸阅读
习题
第6章 AJAX
6.1 JavaScript
6.1.1 JavaScript的使用方式
6.1.2 DOM操作
6.2 XHR
6.2.1 加载外部HTML/XML文档
6.2.2 加载JSON
6.3 利用Web开发者工具探索AJAX
6.3.1 初试Chrome的Web开发者工具
6.3.2 元素面板
6.3.3 网络面板
小结
延伸阅读
习题
第7章 SQL和关系型数据库
7.1 概况及术语
7.2 关系型数据库
7.2.1 在表中保存数据
7.2.2 规范化
7.2.3 关系型数据库和DBMS的高级特性
7.3 SQL:一种与数据库通信的语言
7.3.1 SQL概述
7.3.2 数据控制语言——DCL
7.3.3 数据定义语言——DDL
7.3.4 数据操作语言——DML
7.3.5 子句
7.3.6 事务控制语言——TCL
7.4 数据库实战
7.4.1 管理数据库的R组件
7.4.2 通过基于DBI的组件在R里执行SQL
7.4.3 通过RODBC在R里执行SQL
小结
延伸阅读
习题
第8章 正则表达式和基本字符串函数
8.1 正则表达式
8.1.1 严格的字符匹配
8.1.2 正则表达式的广义化
8.1.3 重新分析入门例子
8.2 字符串处理
8.2.1 stringr组件
8.2.2 其他实用函数
8.3 字符编码简介
小结
延伸阅读
习题
第二部分 网络抓取和文本挖掘实用工具箱
第9章 网络抓取
9.1 数据检索的场景
9.1.1 下载现成的文件
9.1.2 从FTP索引下载多个文件
9.1.3 操作URL访问多个页面
9.1.4 从HTML网页采集链接、列表和表格的便利函数
9.1.5 处理HTML表单
9.1.6 HTTP身份验证
9.1.7 通过HTTPS进行的连接
9.1.8 使用cookie
9.1.9 利用Selenium/Rwebdriver从AJAX增强的网页抓取数据
9.1.10 从API检索数据
9.1.11 用OAuth进行身份验证
9.2 数据提取策略
9.2.1 正则表达式
9.2.2 XPath
9.2.3 应用编程接口
9.3 网络抓取:良好实践
9.3.1 网络抓取是否合法
9.3.2 robots.txt简介
9.3.3 做个友好的(机器)人
9.4 有价值的灵感来源
小结
延伸阅读
习题
第10章 统计性文本处理
10.1 实例:对英国政府的新闻公告进行分类
10.2 处理文本数据
10.2.1 大规模文本操作:tm组件
10.2.2 构建一个词条-文档矩阵
10.2.3 数据清理
10.2.4 稀疏度和n元文法
10.3 有监督的学习技术
10.3.1 支持向量机
10.3.2 随机森林
10.3.3 最大熵
10.3.4 RTextTools组件
10.3.5 应用:政府新闻公告
10.4 无监督的学习技术
10.4.1 隐含狄式分布及相关主题模型
10.4.2 应用:政府新闻公告
小结
延伸阅读
第11章 管理数据项目
11.1 与文件系统交互
11.2 处理多个文档或链接
11.2.1 使用for循环
11.2.2 使用while循环和控制结构
11.2.3 使用plyr组件
11.3 组织抓取程序
11.3.1 进度反馈的实现:消息和进度条
11.3.2 错误和异常处理
11.4 定期执行R脚本
11.4.1 在Mac OS和Linux上安排定时任务
11.4.2 在Windows平台上安排定时任务
第三部分 一组案例分析
第12章 美国参议院里的合作网络
12.1 有关法案的信息
12.2 有关参议员的信息
12.3 分析网络结构
12.3.1 描述性统计
12.3.2 网络分析
12.4 结论
第13章 从半结构化文档解析信息
13.1 从FTP服务器下载数据
13.2 解析半结构化文本数据
13.3 把气象站和气温数据视觉化
第14章 利用Twitter预测2014年奥斯卡奖
14.1 Twitter API概述
14.1.1 REST API
14.1.2 数据流API
14.1.3 采集并预处理数据
14.2 基于Twitter的2014年奥斯卡奖预测
14.2.1 对数据进行视觉化
14.2.2 挖掘推文进行预测
14.3 结论
第15章 绘制姓氏地理分布图
15.1 制定一套数据采集策略
15.2 查看网站
15.3 数据检索和信息提取
15.4 映射姓氏
15.5 处理过程自动化
小结
第16章 采集关于手机的数据
16.1 页面探索
16.1.1 查找指定品牌的手机
16.1.2 提取产品信息
16.2 抓取程序
16.2.1 提取有关多个生产商的数据
16.2.2 数据清理
16.3 图形分析
16.4 数据存储
16.4.1 总体思路
16.4.2 用于存储的表的定义
16.4.3 考虑未来存储的数据表定义
16.4.4 方便数据访问的视图定义
16.4.5 保存数据的函数
16.4.6 数据存储和检查
第17章 分析产品评论里的情绪
17.1 介绍
17.2 采集数据
17.2.1 下载文件
17.2.2 信息提取
17.2.3 数据库存储
17.3 分析数据
17.3.1 数据预处理
17.3.2 基于字典的情绪分析
17.3.3 挖掘评论的内容
17.4 结论
参考文献