tika in action主体内容

chapter1
1.1数字文档协议
    Adode Photoshop:pdf,psd,jpg,gif,png....
    Microsoft Office:xls,doc,docx,xlsx,,vsd...
    Firefox,IE,Safari,etc:html,xthml,xml,rdf,rss...
1.1.1一种文件格式分类
    MIME(Multipurpose Internet Mail Extensions) 标准
    多用途互联网邮件扩展类型
1.1.2解析库
    文件格式多
    应用程序之间不允许别的程序很容易得到文本内容
    替换方法是实现或者使用一种文件格式解析库
    java标准库中的java.util.zip 解析库包
1.1.3作为通用的结构化文本
    应用要求
    XML Html最普遍的使用范围最广的文件格式
    程序关注的内容
1.1.4通用的元数据
    “data about data”:描述数据的数据,主要是描述数据的属性(property)的信息。
    元数据模型
    XMP标准(可扩展元数据平台):用于处理和涉及到的文件的内容储存信息的标准。
    Property类:提供PropertyType和值类型枚举捕获的元数据的名称和值
    metadata类:提供元数据模型的支持,提供各种方法来提取一个文件的内容
    N-grams算法支持语言选择
1.1.5理解一切的程序?
    search engine
    文件>识别文件的格式>选择合适的解析器>提供解析后的原文的数据和解析后的元数据
    apache Lucene...

TILL(tag image file format)标签图像文件格式

1.2什么是apache tika
1.2.1一些历史
1.2.2关键设计目标
    tika全部的架构    
    new parsers can be easily added and removed from the framework
    统一的parser接口:
    低内存占用和快速处理:逐步解析文本,作为基于SAX的XHTML事件放置。将整个XML文档加载到内存中,然后通过API使其可用。另一方面,SAX增量解析标签,导致内存占用很低,允许快速处理时间,并由TIKA架构要求提供功能。(sax替代DOM:文档对象模型)
        采用SAX模型,tika允许开发人员自定义tika的解析器处理自定义将提取的信息    
      关于SAX模型:用于处理XML事件驱动。xml解析的替代方法,比dom提供更好的性能
    灵活元数据:?
    解析器集成:
    MIME 数据库:
MIME:多用途互联网邮件扩展类型
    提供灵活的MIME检测:
    提供语言检测
1.2.3什么时候什么地点使用tika
    搜索引擎和内容存储库
    文本分析
    数字资产管理

chapter2 getting started with tika
2.1tika源码
2.1.1获得源码
2.1.2maven 管理
2.1.3ant project引入tika

2.2tika应用
java -jar tika-app-1.16.jar --gui
2.2.1gui
2.2.2命令行tika

2.3tika作为嵌入式库
2.3.1使用tika facade
2.3.2管理依赖

chapter3 the imformation landscape
3.1衡量信息的负载
3.1.1规模和增长
3.1.2复杂度
3.2
3.2.1现代搜索引擎
3.2.2tika在search里的角色
3.3机器学习
3.3.1your likes and dislikes
3.3.2现实世界的机器学习

Part 2 Tika in detail
chapter4 文本类型检测
4.1互联网媒体类型
4.1.1媒体类型名的用法
4.1.2媒体类型的种类
4.1.3IAN和其他的类型注册
4.2tika中的媒体类型
4.2.1共享的MIME信息数据库
4.3文件格式诊-判断
4.3.1文件名
利用文件的扩展字来确定文件的类型
4.3.2内容类型提示
在一些时候文件的文件名不可获得,或者名字缺少类型扩展字。
使用一些外部类型信息
如:浏览器使用的http协议请求html页面
4.3.3魔数(很多类型的文件起始的几个字节的内容是固定的,根据这几个字节的内容就可以确定文件类型)
文件名扩展字和其他内容类型提示是相当准确的,但是也不是完全能够保证的
使用魔数会有另一问题:确定文件的字符编码
4.3.4字符编码
BOM mark
最容易的识别字符编码的方式是查找可选择的byte order mark(BOM)stored in the document。
byte frequence
最好的识别类型和编码的方法是去查看文件前几个不同频率的字节(?)
    方法在70页,没看懂
统计匹配?
查找最接近输入文件的bytes 和bytes sequences
4.3.5其他的机制
XML 格式
OLE 格式:Microsoft office version between 1995 and 2003
组合启发式

4.4tika 类型检查


5内容抽取
5.1全文抽取
5.1.1解析的简要过程
document->1.type detection(application/pdf) 2.parser selection(PDFParser) 3.text extraction ->content
默认文件大小100000字符
5.1.2全文索引
lucene
5.1.3增强解析
5.2解析器接口
5.2.2解析方法

5.2.3解析接口

5.2.4解析器选择


5.3文件输入流
tika接收文件输入流:java.io.InputStream
5.3.1使给tika的输入标准化
5.3.2tika输入流类

5.4结构化XHTML输出
5.4.1语义结构的文本
5.4.2通过SAX事件的结构化输出
5.4.3使用XHTML结构标记

5.5上下文相关的解析
5.5.1环境设置
5.5.2自定义文档处理

chapter6 Understanding metadata
6.1元数据标准
元数据是有用的摘要信息
6.1.1元数据模型
6.1.2一般的元数据标准

6.1.3特定内容的元数据标准

6.2元数据的质量
6.2.1挑战与问题
6.2.2异构统一标准

6.3tika中的元数据
code-level
6.3.1键和多个值
6.3.2转换和视图

6.4元数据的实际使用
6.4.1 Lucene索引的公共元数据
lucene是apache的一个开源的全文检索工具包,但不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎。部分文本分析引擎(英文和德文)。
6.4.2

chapter7 Language detection
7.1
7.2语言检测理论
7.2.1语言配置文件
语言配置文件的结构和内容依赖于检测算法
对于开发者关键的一个问题是如何去找一个能够准确地代表一种语言不同的使用方式的语料库
7.2.2分析算法
7.2.3N-gram算法
N元算法模型,基于一定的语料库利用N-Gram来预计或评估一个句子是否合理
7.3tika中的语言检测
7.3.1增量式语言检测
7.3.2信息汇总

chapter8文件中内容
8.1内容的类型
8.1.1HDF:一种为科学数据的文件格式
HDF(the Hierarchical Data Format):分层的数据格式
8.1.2RSS(Really Simple Syndication)简易信息聚合:一种为内容快速变化的文件格式
8.2tika如何解析内容
8.2.1内容的组织结构
流:文件中独立的分散的内容可以用流的方式进行解释
Tika RSS parser
随机存取
8.2.2文件头和命名约定
HTML页面:
别的文件超链接: tags with an href attribute
8.2.3储存影响提取

Part3集成和高级使用
chapter9大图片
9.1搜索引擎中的tika
9.1.1搜索使用案例
9.1.2一个搜索索引器的解剖
9.2管理和提取信息(mining 开采)
9.2.1文件管理系统
宽泛地讲,一个文件管理系统将文件收集器和搜索引擎组合成为了一个服务
9.2.2文本挖掘
collections of documents -->text mining-->user
文本挖掘系统通常设计为以纯文本为基础,然后通过自然语言处理或其他文本处理方法提取结构和意义
9.3常用词遵守?(compliance)
9.3.1模块化,Spring,OSGi
OSGi:是java动态化模块化系统的一系列规范。
9.3.2大规模计算

chapter10 tika 和 lucene 搜索栈
10.1承重墙
10.1.1ManifoldCF
10.1.2开放的关联
10.2钢框架(稳定)
10.2.1 lucene core(核心)
核心是文件模型
10.2.2 apache Solr(独立的企业级搜索应用服务器,对外提供类似于Web-service的API接口。)
用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过http Get操作提出查找请求,并得到XML格式的返回结果
10.3the finishing touches 最后润饰的几笔(开源框架)
10.3.1 nutch
10.3.2 droids
10.3.3 mahout

chapter11 tika的推广扩大
11.1增加类型信息
处理一种新的文件类型的第一步是用媒体类型识别文件
11.1.1定制媒体类型确认
Using the MimeTypesFactory class to load and alternative file for instructing Tika
11.2定制类型检测
基于公有的特点(文件扩展字,魔数,XML元素)定制新类型和新类型的检测规则
11.2.1选择器接口

11.2.2建造一个定制类型检测器
1、171页
detect()方法
stream
11.2.3用新的检测器塞住
11.3定制解析
11.3.1定制已存在的解析器
11.3.2写一个新的解析器
11.3.3用新的解析器塞住
11.3.4覆写存在的解析器

Part4 案例学习
chapter12 Powering NASA science data systems
12.1NASA's Planetary Data System行星数据系统
12.1.1PDS的数据模型
12.1.2PDS搜索重构
12.2 NASA的地球科学事业
12.2.1 leveraging tika in NASA earth science SPIS
12.2.2 地面数据系统中使用tika

chapter13 用apache jackrabbit进行内容管理
13.1apache jackrabbit的介绍
内容仓库
是一个高级的信息管理系统,是传统的数据仓库的扩展,提供了诸如版本控制,全文检索,访问控制,内容分类,内容事件监视等内容服务
13.2文本抽取池
13.3content-ware(内容感知) WebDAV
WebDAV:一种基于http1.1协议的通信协议。扩展了HTTP1.1,在GET,POST,HEAD等几个HTTP标准方法以外一些新的方法,使应用程序可对Web Server直接读写,并支持写文件锁定及解锁,还可以支持文件的版本控制。

chapter14用tika来帮助管理癌症研究数据
14.1 NCI 早期检测研究网络
NCI: the National Cancer Institute美国国家癌症研究院
14.1.1 the EDRN数据模型
14.1.2科学数据管理

14.2集成tika
14.2.1元数据抽取
14.2.2MIME类型识别及分类

chapter15经典搜索引擎实例
15.1the public terabyte dataset project公共大数据项目
15.2the Bixo web crawler(爬虫)
15.2.1解析拿到的文件
15.2.2验证tika的字符编码检测






















































你可能感兴趣的:(tika)