我正在开发一个允许用户上传视频和音频文件的网站,在上传时,一些常见的元数据字段必须从文件中填充。我找到了Hachoir,它看起来不错,但有一个问题,要创建用于读取元数据的解析器,需要使用文件名而不是文件对象或流对象。
如何在文件对象上使用Hachoir?
如何在文件对象上使用Hachoir?
使用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)