8

我正在一个用户上传视频和音频文件的网站上工作,上传时,必须从文件中填充一些常见的元数据字段。我找到了 Hachoir,它看起来不错,但是有一个问题,要创建一个用于元数据读取的解析器,需要的是文件名,而不是类文件或流对象。

如何将 Hachoir 与文件类对象一起使用?

4

1 回答 1

8

使用 Hachoir v3.2.1:

import hachoir.metadata
import hachoir.parser
import hachoir.stream

parser = hachoir.parser.guessParser(hachoir.stream.InputIOStream(file_handle, None, tags=[]))
if parser:
    hachoir_metadata = hachoir.metadata.extractMetadata(parser)
    if hachoir_metadata:
        metadata: Dict[str, str] = hachoir_metadata.exportDictionary()['Metadata']
        print(metadata)
于 2012-07-08T01:48:41.347 回答