自己动手写搜索引擎系列【目录】

来源:互联网 发布:花房姑娘 知乎 编辑:程序博客网 时间:2024/05/01 08:11
第1章  遍历搜索引擎技术 1
1.1  30分钟实现的搜索引擎 1
1.1.1  准备工作环境(10分钟) 1
1.1.2  编写代码(15分钟) 3
1.1.3  发布运行(5分钟) 5
1.2  Google神话 9
1.3  体验搜索引擎 9
1.4  搜索语法 10
1.5  你也可以做搜索引擎 13
1.6  搜索引擎基本技术 14
1.6.1  网络蜘蛛 14
1.6.2  全文索引结构 14
1.6.3  Lucene全文检索引擎 15
1.6.4  Nutch网络搜索软件 16
1.6.5  用户界面 17
1.7  商业搜索引擎技术介绍 19
1.7.1  通用搜索 19
1.7.2  垂直搜索 20
1.7.3  站内搜索 21
1.7.4  桌面搜索 23
1.8  本章小结 24
第2章  获得海量数据 25
2.1  自己的网络蜘蛛 25
2.1.1  抓取网页 25
2.1.2  网络蜘蛛遍历与实现 26
2.1.3  改进网络蜘蛛 30
2.1.4  MP3抓取 34
2.1.5  RSS抓取 36
2.1.6  图片抓取 38
2.1.7  垂直行业抓取 39
2.2  抓取数据库中的内容 42
2.2.1  建立数据视图 42
2.2.2  JDBC数据库连接 43
2.2.3  增量抓取 45
2.3  抓取本地硬盘上的文件 47
2.4  本章小结 49
第3章  提取文档中的文本内容 50
3.1  从HTML文件中提取文本 50
3.1.1  HtmlParser介绍 53
3.1.2  结构化信息提取 63
3.1.3  查看网页的DOM结构 68
3.1.4  正文提取的工具NekoHTML 71
3.1.5  网页去噪 73
3.1.6  网页结构相似度计算 76
3.1.7  网站风格树去除文档噪声 80
3.1.8  正文提取 92
3.2  从非HTML文件中提取文本 98
3.2.1  TEXT文件 98
3.2.2  PDF文件 98
3.2.3  Word文件 105
3.2.4  RTF文件 106
3.2.5  Excel文件 107
3.2.6  PowerPoint文件 108
3.3  流媒体内容提取 109
3.3.1  音频流内容提取 109
3.3.2  视频流内容提取 111
3.4  抓取限制应对方法 113
3.5  本章小结 114
第4章  中文分词 115
4.1  Lucene中的中文分词 115
4.2  Lietu中文分词的使用 116
4.3  中文分词的原理 117
4.4  查找词典算法 118
4.5  最大概率分词方法 123
4.6  新词发现 127
4.7  词性标注 129
4.8  本章小结 139
第5章  自然语言处理 140
5.1  语法解析树 140
5.2  文档排重 141
5.3  中文关键词提取 142
5.3.1  关键词提取的基本方法 142
5.3.2  从网页中提取关键词 145
5.4  相关搜索 145
5.5  拼写检查 148
5.5.1  英文拼写检查 148
5.5.2  中文拼写检查 149
5.6  自动摘要 153
5.6.1  自动摘要技术 153
5.6.2  自动摘要的设计 154
5.6.3  Lucene中的动态摘要 162
5.7  自动分类 163
5.7.1  Classifier4J 164
5.7.2  自动分类的接口定义 165
5.7.3  自动分类的SVM方法实现 166
5.7.4  多级分类 167
5.8  自动聚类 170
5.8.1  聚类的定义 170
5.8.2  K均值聚类方法 170
5.8.3  K均值实现 173
5.9  拼音转换 179
5.10  语义搜索 180
5.11  跨语言搜索 186
5.12  本章小结 188
第6章  创建索引库 189
6.1  设计索引库结构 190
6.1.1  理解Lucene的索引库结构 190
6.1.2  设计一个简单的索引库 192
6.2  创建和维护索引库 193
6.2.1  创建索引库 193
6.2.2  向索引库中添加索引文档 194
6.2.3  删除索引库中的索引文档 196
6.2.4  更新索引库中的索引文档 197
6.2.5  索引的合并 197
6.2.6  索引的定时更新 197
6.2.7  索引的备份和恢复 198
6.2.8  修复索引 199
6.3  读写并发控制 200
6.4  优化使用Lucene 200
6.4.1  索引优化 201
6.4.2  查询优化 202
6.4.3  实现时间加权排序 206
6.4.4  实现字词混合索引 207
6.4.5  定制Similarity 214
6.4.6  定制Tokenizer 215
6.5  查询大容量索引 217
6.6  本章小结 218
第7章  用户界面设计与实现 219
7.1  Lucene搜索接口(search代码) 219
7.2  搜索页面设计 221
7.2.1  用于显示搜索结果的taglib 221
7.2.2  用于搜索结果分页的taglib 223
7.2.3  设计一个简单的搜索页面 225
7.3  实现搜索接口 227
7.3.1  布尔搜索 227
7.3.2  指定范围搜索 228
7.3.3  搜索结果排序 233
7.3.4  搜索页面的索引缓存与更新 234
7.4  实现关键词高亮显示 236
7.5  实现分类统计视图 239
7.6  实现相似文档搜索 244
7.7  实现AJAX自动完成 246
7.7.1  总体结构 247
7.7.2  服务器端处理 247
7.7.3  浏览器端处理 249
7.7.4  服务器端改进 250
7.7.5  部署总结 261
7.8  jQuery实现的自动完成 262
7.9  集成其他功能 267
7.9.1  拼写检查 267
7.9.2  分类统计 267
7.9.3  相关搜索 271
7.9.4  再次查找 274
7.9.5  搜索日志 275
7.10  搜索日志分析 276
7.11  本章小结 280
第8章  其他高级主题 281
8.1  使用Solr实现分布式搜索 281
8.1.1  Solr服务器端的配置与中文支持 282
8.1.2  把数据放进Solr 287
8.1.3  删除数据 289
8.1.4  客户端搜索界面 290
8.1.5  Solr索引库的查找 292
8.1.6  索引分发 294
8.1.7  Solr搜索优化 298
8.1.8  Solr中字词混合索引 302
8.1.9  相关检索 304
8.1.10  搜索结果去重 307
8.1.11  分布式搜索 311
8.1.12  SolrJ查询分析器 315
8.1.13  扩展SolrJ 325
8.1.14  扩展Solr 327
8.1.15  Solr的.NET客户端 333
8.1.16  Solr的PHP客户端 334
8.2  图像的OCR识别 336
8.3  竞价排名 343
8.4  Web图分析 344
8.5  使用并行程序分析数据 350
8.6  RSS搜索 351
8.7  本章小结 353
原创粉丝点击