欢迎访问宙启技术站
智能推送

如何在Python中使用imghdr模块验证图片的类型和格式

发布时间:2023-12-24 09:36:16

在Python中,使用imghdr模块可以验证图片的类型和格式。imghdr模块提供了what()方法,该方法接收一个文件名作为参数,并返回文件的类型。

下面是一个使用imghdr模块验证图片类型和格式的例子:

import imghdr

# 设置要验证的图片文件名
image_file = "example.jpg"

# 使用imghdr模块验证图片类型和格式
image_type = imghdr.what(image_file)

# 打印验证结果
print("图片类型:", image_type)

在上面的例子中,首先导入了imghdr模块。接下来,通过设置一个图片文件的文件名,可以将其传递给what()方法进行验证。what()方法将返回文件的类型,例如JPEG、PNG、GIF等。最后,我们打印了验证结果。

除了验证单个文件的类型,imghdr模块还提供了验证图片格式的方法。下面是一个使用imghdr模块验证图片格式的例子:

import imghdr

# 设置要验证的图片文件名
image_file = "example.jpg"

# 打开图片文件进行读取
with open(image_file, "rb") as f:
    # 读取文件的前10个字节
    header = f.read(10)
    
    # 使用imghdr模块验证图片格式
    image_format = imghdr.what(None, h=header)

# 打印验证结果
print("图片格式:", image_format)

在上面的例子中,我们首先打开图片文件,并使用rb模式进行读取。接下来,我们读取文件的前10个字节,存储在变量header中。然后,我们将header作为参数传递给what()方法进行验证。what()方法的 个参数传入的是None,表示不需要验证文件名,只需要验证提供的header。第二个参数传入的是header,用于验证文件的格式。最后,我们打印了验证结果。

总结一下,使用imghdr模块能够方便地验证图片的类型和格式。通过what()方法可以验证单个文件的类型,也可以通过读取文件的header来验证图片的格式。