iscc cli-从媒体文件创建iscc代码
iscc-cli的Python项目详细描述
iscc cli-命令行工具
A command line tool that creates ISCC Codes for digital media files based on the reference implementation.
目录
背景
国际标准内容代码建议使用open standard进行分散式内容标识。iscc代码通过算法从内容本身生成{str 1}$,并提供许多强大的功能,如内容相似性聚类和部分完整性检查。如果您想进一步了解iscc请查看https://iscc.codes。
这个工具提供了一种从命令行生成iscc代码的简单方法。它支持通过Apache Tika提取内容,并使用ISCC reference implementation。
支持的媒体文件类型
文本
doc、docx、epub、html、odt、pdf、rtf、txt、xml
图像
gif、jpg、png
音频
AIF、MP3、OGG、WAV
注意:对音频ID的支持是实验性的,还不是specification
的一部分要求
NOTE: Requires JAVA to be installed and on your path! |
---|
iscc cli在linux和windows上使用python 3.5/3.6/3.7进行测试,但也应该在macos上工作。
这个工具依赖于tika-python。Tika用于在生成iscc代码之前从媒体文件中提取元数据和内容。第一次执行iscc
命令行工具时,它将自动下载并在后台启动java tika服务器(这可能需要一些时间)。连续运行将访问现有的TIKA实例。您可以使用$ iscc init
安装
iscc命令行工具是用Python Package Index上的包名iscc-cli
发布的,可以用pip:
$ pip3 install iscc-cli
用法
获得帮助
通过调用不带任何参数的iscc
来显示帮助概述:
$ iscc Usage: iscc [OPTIONS] COMMAND [ARGS]...Options: --version Show the version and exit. --help Show this message and exit.Commands: gen* Generate ISCC Code for FILE. batch Create ISCC Codes for all files in PATH. info Show information about environment. init Inititalize and check environment. sim Estimate Similarity of ISCC Codes A & B. web Generate ISCC Code from URL.
通过输入iscc <command>
:
$ iscc gen Usage: iscc gen [OPTIONS] FILE Generate ISCC Code for FILE.Options: -g, --guess Guess title (first line of text). -t, --title TEXT Title for Meta-ID creation. -e, --extra TEXT Extra text for Meta-ID creation. -v, --verbose Enables verbose mode. -h, --help Show this message and exit.
生成iscc代码
gen
命令为单个文件生成iscc代码:
$ iscc gen tests/demo.jpg ISCC:CCTcjug7rM3Da-CYDfTq7Qc7Fre-CDYkLqqmQJaQk-CRAPu5NwQgAhv
gen
命令是默认的,因此您可以跳过它,只需执行$ iscc tests/demo.jpg
要获得更详细的结果,请使用-v
(--verbose
)选项:
$ iscc -v tests/demo.jpg ISCC:CCTcjug7rM3Da-CYDfTq7Qc7Fre-CDYkLqqmQJaQk-CRAPu5NwQgAhvNorm Title: concentrated catTophash: 7a8d0c513142c45f417e761355bf71f11ad61d783cd8958ffc0712d00224a4d0Filepath: tests/demo.jpgGMT: image
有关如何同时为多个文件生成iscc代码的帮助,请参见iscc batch
。
iscc码的相似性
sim
命令计算两个iscc代码的估计相似性:
$ iscc sim CCUcKwdQc1jUM CCjMmrCsKWu1D Estimated Similarity of Meta-ID: 87.50 %
您还可以比较完整的四组分ISCC代码。
维护人员
贡献
欢迎拉取请求。对于重大变更,请先打开一个问题来讨论您希望更改的内容。
请确保根据需要更新测试。
您可能还想加入我们的开发人员在https://t.me/iscc_dev的电报聊天。
更改日志
[0.6.0]-2019-06-11
- 添加了新的
web
命令(为url创建iscc代码)
[0.5.0]-2019-06-06
- 增加了对aif、mp3、ogg、wav的实验性支持
- 更详细的批处理输出
- 修复批处理输出默认meta id
[0.4.0]-2019-06-03
- 添加了对HTML、ODT、TXT、XML、GIF的支持
- 添加了对标题的可选猜测(文本的第一行)
- 添加了新的
info
命令 - 修复了对相同实例id的错误检测
[0.3.0]-2019-06-01
- 添加
sim
iscc代码的命令相似性比较
[0.2.0]-2019-05-31
- 添加对doc、docx和rtf文档的支持
- 更新到iscc 1.0.4(修复空白错误)
[0.1.0]-2019-05-31
- 基本ISCC代码创建
- 支持的文件类型:jpg、png、pdf、epub
许可证
麻省理工学院©2019泰特斯斯潘