python下载的时候更改图片格式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import aiohttp
from PIL import Image
import asyncio
import io
import os

headers = {'User-Agent': 'PixivAndroidApp/5.0.191 (Android 6.0.1; HUAWEI ALE-CL00)',
'Accept-Language': 'zh_CN',
'App-OS': 'android',
'App-OS-Version': '6.0.1',
'App-Version': '5.0.191',
'Referer': 'https://www.pixiv.net'}


async def download(url): # 下载
filename = os.path.basename(url) # 从url获取文件名
print(filename) # 打印文件名字
async with aiohttp.ClientSession() as session:
async with session.get(url, headers=headers) as resp:
print(resp.status) # 打印状态码
test = await resp.content.read()
im = Image.open(io.BytesIO(test)) # 以二进制读取文件
im.save(filename) # 保存图片


asyncio.run(download('https://i.pximg.net/c/600x1200_90_webp/img-master/img/2017/07/25/21/32/50/64047178_p0_master1200.jpg'))

从Pixiv下载的图片用二进制查看是webp格式的,但是后缀名是jpg或者png的,用qqbot发出去的webp格式图片在pcqq上不显示,所以转码一下


python下载的时候更改图片格式
https://2333.world/_posts/2020_05_07/python下载的时候更改图片格式/
作者
Yuban10703
发布于
2020年5月8日
许可协议