apache tika应用程序的python客户端
tika-app的Python项目详细描述
PyPI versionBuild StatusCoverage StatusBCH compliance
蒂卡应用程序python
概述
tika app python是Apache Tika App的包装器。使用此库,您可以分析: 磁盘上的文件-base64中的有效负载-文件对象(类似于标准输入)
要使用文件对象函数,应使用apache tika version>;=1.17。
apache 2开源许可证
Tika应用程序Python可以免费下载、使用和修改。它 在Apache2许可下可用。
安装
克隆存储库
git clone https://github.com/fedelemantuano/tika-app-python.git
并使用setup.py:
安装tika app pythoncd tika-app-python python setup.py install
或者使用pip:
pip install tika-app
在项目中的使用
导入TikaApp类:
from tikapp import TikaApp tika_client = TikaApp(file_jar="/opt/tika/tika-app-1.18.jar")
对于get内容类型:
tika_client.detect_content_type("your_file")
用于检测语言:
tika_client.detect_language("your_file")
用于检测所有元数据和内容:
tika_client.extract_all_content("your_file")
仅用于检测内容:
tika_client.extract_only_content("your_file")
仅用于检测元数据:
tika_client.extract_only_metadata("your_file")
您可以使用相同的方法分析base64中的负载,但是 payload参数:
tika_client.detect_content_type(payload="base64_payload") tika_client.detect_language(payload="base64_payload") tika_client.extract_all_content(payload="base64_payload") tika_client.extract_only_content(payload="base64_payload") tika_client.extract_only_metadata(payload="base64_payload")
或者可以使用相同的 方法,但传递objectInput参数:
tika_client.detect_language(objectInput="objectInput") tika_client.extract_all_content(objectInput="objectInput") tika_client.extract_only_content(objectInput="objectInput") tika_client.extract_only_metadata(objectInput="objectInput")
从命令行使用
如果使用pip或setup.py安装了tika应用程序python,则可以 与命令行一起使用要使用tika app python,您应该提交 apache tika应用程序jar。可以:-设置环境值 TIKA_APP_JAR-使用--jar开关
最后一个覆盖了所有其他的。
这些都是开关:
usage: tikapp [-h] (-f FILE | -p PAYLOAD | -k) [-j JAR] [-d] [-t] [-l] [-m] [-a] [-v] Wrapper for Apache Tika App. optional arguments: -h, --help show this help message and exit -f FILE, --file FILE File to submit (default: None) -p PAYLOAD, --payload PAYLOAD Base64 payload to submit (default: None) -k, --stdin Enable parsing from stdin (default: False) -j JAR, --jar JAR Apache Tika app JAR (default: None) -d, --detect Detect document type (default: False) -t, --text Output plain text content (default: False) -l, --language Output only language (default: False) -m, --metadata Output only metadata (default: False) -a, --all Output metadata and content from all embedded files (default: False) -v, --version show program's version number and exit
磁盘上的文件示例:
$ tikapp -f example_file -a
标准输入示例
$ tikapp -a -k < example_file
性能测试
这些是性能测试的结果 tests 文件夹:
(Python 2) tika_content_type() 0.704840 sec tika_detect_language() 1.592066 sec magic_content_type() 0.000215 sec tika_extract_all_content() 0.816366 sec tika_extract_only_content() 0.788667 sec (Python 3) tika_content_type() 0.698357 sec tika_detect_language() 1.593452 sec magic_content_type() 0.000226 sec tika_extract_all_content() 0.785915 sec tika_extract_only_content() 0.766517 sec