python获取图像的文件格式_Python识别图像格式并转码(支持webp格式)

上周有个需求需要把爬取的图片上传到Magento后台服务器,并显式声明文件格式,例如:

"type": "image/jpeg",

"name": "abc.jpg",

'base64_encoded_data': "b64encoding_string"

上传过程中服务器会根据图片的二进制头来验证格式,如果与type声明的格式不一致或者此格式(比如:webp)服务器不支持,就会抛出不匹配异常。

我面临两个问题:

下载图片的url文件名后缀和图片真实格式并不一样,比如下载下来的是abc.jpg但通过二进制打开发现图片格式其实是webp。

下载后上传前我并不知道文件是什么格式的。

所以我需要工具解决图片转码和图片识别的问题,这里总结一下用到的工具和步骤:

import hashlib

import base64

import requests

import os, time

from PIL import Image

# 指定图片下载与转码路径

basedir = os.path.abspath(os.path.dirname(__name__))

image_path = os.path.join(basedir, 'static')

def image_download(image_link):

headers = {

'Cache-Control': "no-cache",

'user-agent': &#

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值