gpt4 book ai didi

python - 在Python中检测文件是否是视频?

转载 作者:行者123 更新时间:2023-12-01 05:39:56 31 4
gpt4 key购买 nike

有没有可以用来检测文件是否为视频的 Python 库?我允许用户将视频上传到我的网站,并且我想阻止图像和文档以及除视频文件类型之外的任何内容。我现在的计划是上传任何文件,测试它,如果不是视频,则删除它,如果它是通过正常管道处理的。我很想以某种方式测试损坏的视频,但那是另一回事。

我需要能够支持没有扩展名的视频。我原以为 mimetypes 库可以做到这一点,但是当我执行以下操作时:

import mimetypes

url = 'http://thehighlightnetwork.appspot.com/serve/AMIfv94NsD5mUOwE60RnMSsBKVUsgilNyNJZawl30CRqVnLad7HkNeMmdBQCMhiAOXc0N9onNGjAM19TTVENEPjAwpeQZ6dq25CWjD5DzQXoK0c4IaPum_L-83EQS4SeUNqOCEYleHTskfkhfC8BXZJQtlyA99g2nN9lrfCXWrNGYPtjDeZETEQ'
print mimetypes.guess_type(url)

我得到:

(None, None)

我正在使用 Google App Engine,因此我拥有所有内置库,但也可以添加几乎任何内容。

最佳答案

安装python-magic,与操作系统无关

pip install python-magic

Windows 和 OSX 的依赖项

在 Windows 上,您需要下载以下库并将其保存在 C:\Windows\System32 下:

regex2.dll from sourceforge.net/projects/gnuwin32/files/regex/
zlib1.dll from sourceforge.net/projects/gnuwin32/files/zlib/
magic1.dll from sourceforge.net/projects/gnuwin32/files/file/

在 OSX 上:

When using Homebrew: brew install file-formula
When using macports: port install file

然后在python中执行代码:

import magic
magic.from_file("path/to/file/filename.extension")

# usage example
magic.from_file("test/test.avi", mime=True)

有关更多详细信息,请参阅 Python-Magic

我运行时的输出:

>>> import magic

>>> magic.from_file("test.avi")
'RIFF (little-endian) data, AVI, 320 x 240, 25.00 fps, video: XviD, audio: MPEG-1 Layer 3 (stereo, 22050 Hz)'

关于python - 在Python中检测文件是否是视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17866579/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com