我正在尝试遍历文件列表,并返回那些作为媒体文件(图像、视频、gif、音频等)的文件。
看到有很多媒体类型,是否有一个库或更好的方法来检查这个,而不是列出所有类型然后根据该列表检查文件?
这是我目前正在做的事情:
import os
types = [".mp3", ".mpeg", ".gif", ".jpg", ".jpeg"]
files = ["test.mp3", "test.tmp", "filename.mpg", ".AutoConfig"]
media_files = []
for file in files:
root, extention = os.path.splitext(file)
print(extention)
if extention in types:
media_files.append(file)
print("Found media files are:")
print(media_files)
Run Code Online (Sandbox Code Playgroud)
但请注意它没有包括filename.mpg,因为我忘了把它.mpg放在我的types列表中。(或者,更有可能的是,我没想到该列表会包含一个.mpg文件,所以没有考虑将其列出。)
为此,您需要获取文件的 Internet 媒体类型,按 / 字符拆分并检查它是否以音频、视频、图像开头。
这是一个示例代码:
import mimetypes
mimetypes.init()
mimestart = mimetypes.guess_type("test.mp3")[0]
if mimestart != None:
mimestart = mimestart.split('/')[0]
if mimestart in ['audio', 'video', 'image']:
print("media types")
Run Code Online (Sandbox Code Playgroud)
注意:此方法根据扩展名假设文件类型,不打开实际文件,它仅基于文件扩展名
| 归档时间: |
|
| 查看次数: |
4635 次 |
| 最近记录: |