博客
关于我
python 使用filetype校验文件
阅读量:803 次
发布时间:2023-03-06

本文共 500 字,大约阅读时间需要 1 分钟。

文件类型识别可能存在问题。为确保文件上传或处理的准确性,建议采用MIME类型和文件扩展名结合的方法进行验证。在实际应用中,通过以下方式可以实现文件类型的准确识别:

  • 首先,获取目标文件的扩展名并去除点号,例如文件路径为/path/to/file.docx,则扩展名为docx。
  • 使用预定义的myfiletype字典查找对应的MIME类型。该字典定义如下:
    myfiletype = {    "docx": "application/zip",    "pdf": "application/pdf",    "pptx": "application/zip",    "xlsx": "application/zip"}
  • 通过调用ftype.guess(filepath).mime获取文件的MIME类型。
  • 将两个MIME类型进行比较,如type1与type2一致时,表示文件类型识别成功。
  • 值得注意的是,该方法的准确性依赖于两个条件:

    • 文件扩展名的处理是否正确
    • 文件系统是否支持相应的MIME类型

    如果发现type1与type2不一致的情况,可能是由于文件扩展名处理不当或文件系统兼容性问题导致的。

    转载地址:http://idofk.baihongyu.com/

    你可能感兴趣的文章
    Python:Google API - 从消息中获取 mimeTypes
    查看>>
    Python:Google API - 从消息中获取 mimeTypes
    查看>>
    Python:subprocess.call,stdout to file,stderr to file,在屏幕上实时显示stderr
    查看>>
    Python:TypeError:无法连接“str“和“int“对象
    查看>>
    Python:XPath 在 ElementTree 中不可用
    查看>>
    Python:从 FTP 服务器下载文件
    查看>>
    python:从列表中创建元组列表
    查看>>
    Python:从嵌套列表中删除重复项
    查看>>
    Python:从间隔映射到值
    查看>>
    Python:使用 shell=False 的子进程调用不起作用
    查看>>
    Python:修改 PATH 环境变量的平台无关方式
    查看>>
    Python:假与 0
    查看>>
    Python:函数使用
    查看>>
    Python:函数进阶
    查看>>
    Python:在整数的二进制表示中查找最长的二进制间隙
    查看>>
    Python:如何从二进制转换为 base 64 并返回?
    查看>>
    Python:如何以非阻塞方式读取子进程的标准输出
    查看>>
    Python:如何使用 plotly 制作阴影区域或交替背景颜色?
    查看>>
    Python:如何根据日期时间获取值的计数
    查看>>
    python:如何检测串行 COM 上的设备名称/ID
    查看>>