我查看了Flask文档,包括快速入门指南和文件上传指南,但无法找到有关获取文件大小的任何信息。据我所知,我只给出了用户驱动器上文件的名称,以及包含上传文件的输入字段的名称。
除了将文件写入磁盘然后使用os.path.getsize检查大小之外,还有办法获取文件对象的大小吗?
我一直在做:
f.seek(0,SEEK_END)
f.tell()
一定有更好的方法吗?
答案 0 :(得分:2)
如果HTML页面中有<input type="file" name="foo"/>
等上传字段,request.files['foo']
会为您提供一个对象,该对象具有一个名为content_length
的整数属性。这是上传文件的大小(以字节为单位),请参见此处的示例用法:https://github.com/dnet/photochecklist/blob/5072331/model.py#L78