项目介绍
tika-python 是一个基于 Python 的类库,旨在通过 Tika REST 服务器将 Apache Tika 引入 Python 环境。Apache Tika 是一个功能强大的工具,用于从各种文档中提取文本和元数据,而 tika-python 则通过提供 Python 接口,使得这些功能在 Python 程序中得以使用。
tika-python 可以通过 Setuptools、Pip 或 Easy Install 进行安装,但前提是系统上需要安装 Java 7 或以上版本,因为 tika-python 在后台启动了 Tika REST 服务器。这个项目受到了 Aptivate Tika 的启发,并致力于提供简便的文档解析解决方案。
安装方法
使用 pip 安装
pip install tika
不使用 pip 安装
对于无需使用 pip 的情况下,可以通过以下步骤进行安装:
python setup.py build
python setup.py install
网络受限环境配置
对于无法访问互联网的环境,可下载 Tika 服务器文件(包括 tika-server.jar 和 tika-server.jar.md5),并设置 TIKA_SERVER_JAR 环境变量,如下所示:
export TIKA_SERVER_JAR="file:///<yourpath>/tika-server-standard.jar"
这样就可以在脱机环境中运行 tika-python,而无需每次都从 Apache 下载最新版本。
环境变量
tika-python 在初始化时读取一些环境变量,这些变量用于控制 Tika 服务器的各种参数配置:
TIKA_VERSION
:指定 Tika 版本号,如 1.12 等。TIKA_SERVER_JAR
:用于指定远程 Tika 服务器 jar 的下载 URL。TIKA_SERVER_ENDPOINT
:设置正在运行的 Tika 服务器的主机地址。TIKA_CLIENT_ONLY
:若设置为 True,则忽略TIKA_SERVER_JAR
,仅通过TIKA_SERVER_ENDPOINT
访问 Tika。- 其他环境变量如
TIKA_TRANSLATOR
、TIKA_SERVER_CLASSPATH
、TIKA_LOG_PATH
等,同样用于配置和调试。
测试方法
tika-python 提供多种接口,包括解析接口、检测接口、配置接口、语言检测接口等,用户可以使用这些接口解析文件的内容和元数据信息。
以下是一些常用接口的示例:
解析接口
用于提取文件内容和元数据:
import tika
from tika import parser
parsed = parser.from_file('/path/to/file')
print(parsed["metadata"])
print(parsed["content"])
检测接口
用于检测文件的 MIME 类型:
import tika
from tika import detector
print(detector.from_file('/path/to/file'))
配置接口
用于查看 Tika 服务器的配置,如支持的解析器、MIME 类型等:
import tika
from tika import config
print(config.getParsers())
语言检测接口
用于检测文件中所用语言的两字符代码:
from tika import language
print(language.from_file('/path/to/file'))
新命令行工具
安装 tika-python 后,用户还可使用新的命令行工具 tika-python
,该工具能执行解析、检测、语言识别、翻译、配置查看等多种操作,返回的结果默认为 JSON 格式。用户可以通过命令行查看所有可用命令及其选项。
贡献者
项目由来自不同机构和公司的开发者共同参与和维护,感谢这些贡献者的辛勤付出。项目也得到 DARPA MEMEX 计划的支持。
许可证
项目使用 Apache License, version 2 作为许可证,用户可以在遵守许可证的条件下自由使用和修改代码。