从http请求直接写入jpg
Write from http request to jpg directly
我有一个脚本可以从多个网站下载图片。我不知道文件的格式,它可能会有所不同。
我的工作:
if response.status_code is requests.codes.ok:
with iopen(path, 'wb') as file:
file.write(response.content)
在指定路径创建图像。然而,有时我下载的文件是 PNG 格式,并且有一个重要的大小。由于大小问题,我想将其直接转换为 jpg 格式,并进行某种压缩,以减少磁盘上文件的 space。
我该怎么做?解决方案必须兼容 python 3.
好的,我自己的回答:
import io
from PIL import Image
if response.status_code is requests.codes.ok:
io = io.BytesIO(response.content)
im = Image.open(io).convert('RGB').save('test.jpg)
我有一个脚本可以从多个网站下载图片。我不知道文件的格式,它可能会有所不同。
我的工作:
if response.status_code is requests.codes.ok:
with iopen(path, 'wb') as file:
file.write(response.content)
在指定路径创建图像。然而,有时我下载的文件是 PNG 格式,并且有一个重要的大小。由于大小问题,我想将其直接转换为 jpg 格式,并进行某种压缩,以减少磁盘上文件的 space。
我该怎么做?解决方案必须兼容 python 3.
好的,我自己的回答:
import io
from PIL import Image
if response.status_code is requests.codes.ok:
io = io.BytesIO(response.content)
im = Image.open(io).convert('RGB').save('test.jpg)