av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python怎么在上傳圖片后壓縮圖片大小

瀏覽:110日期:2022-07-16 10:24:39

問題描述

我用的是flask框架,圖片處理用的是pillow。

一般上傳都是在循環files,然后逐個file.save()我希望在save完成后,執行pillow的壓縮邏輯。

但是似乎save是一個I/O操作,存在延遲性,如果直接在file.save()下面直接調用pillow的Image.open,會出錯,因為圖片數據還沒有寫入圖片。

咋辦?

問題解答

回答1:

def save(self, dst, buffer_size=16384):'''Save the file to a destination path or file object. If thedestination is a file object you have to close it yourself after thecall. The buffer size is the number of bytes held in memory duringthe copy process. It defaults to 16KB.For secure file saving also have a look at :func:`secure_filename`.:param dst: a filename or open file object the uploaded file is saved to.:param buffer_size: the size of the buffer. This works the same as the `length` parameter of :func:`shutil.copyfileobj`.'''from shutil import copyfileobjclose_dst = Falseif isinstance(dst, string_types): dst = open(dst, ’wb’) close_dst = Truetry: copyfileobj(self.stream, dst, buffer_size)finally: if close_dst:dst.close()

你看save操作不是異步的吖

更新

copyfileobj是個阻塞操作

https://github.com/pallets/we...

回答2:

其實這類圖片處理,直接使用阿里云的OSS或者七牛等類似的存儲功能更好,直接將圖片上傳到OOS中,然后調用特別的后綴進行指定的圖片處理,未來也訪問OSS上處理后的地址。這樣既可以規避用自己服務器處理圖片的負荷,而且也降低了訪問的壓力,對于降低程序的復雜度也是大有好處的。

回答3:

樓主看看Image.open 的fp參數,也可以A filename (string), pathlib.Path object or a file object PIL.Image.open(fp, mode=’r’)

你直接傳file給Image.open(file)就可以了吧!

PIL.Image.open(fp, mode=’r’)Opens and identifies the given image file.This is a lazy operation; this function identifies the file, but the file remains open and the actual image data is not read from the file until you try to process the data (or call the load() method). See new().Parameters: fp – A filename (string), pathlib.Path object or a file object. The file object must implement read(), seek(), and tell() methods, and be opened in binary mode.mode – The mode. If given, this argument must be “r”.Returns: An Image object.Raises: IOError – If the file cannot be found, or the image cannot be opened and identified.

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 日韩精品视频在线免费观看 | 亚洲精品国产a久久久久久 午夜影院网站 | 日韩一区二区三区在线观看 | 国产精品视频网 | 亚洲免费网站 | 国产亚洲一区二区三区在线观看 | 国产欧美日韩一区二区三区 | 成人小视频在线 | 91精品国产一区二区三区香蕉 | 97精品国产97久久久久久免费 | 亚洲精品一区二区三区四区高清 | 欧美日韩精品久久久免费观看 | 午夜成人免费视频 | 欧美日本韩国一区二区 | 中文字幕一区二区三区在线观看 | 国产一区在线免费观看 | 久久亚洲一区二区三区四区 | 久久精品网 | 国产一区h | 高清18麻豆 | 国产精品久久一区二区三区 | 国产一区久久 | 亚洲国产精品99久久久久久久久 | 国产欧美一区二区三区在线看 | 天堂在线免费视频 | 亚洲精选久久 | 精品国产精品一区二区夜夜嗨 | 二区高清| 一区二区三区四区国产 | 亚洲精品一区二区三区四区高清 | 日日做夜夜爽毛片麻豆 | 成人国产精品一级毛片视频毛片 | 国产农村妇女毛片精品久久麻豆 | 精品国产99| 午夜精品一区二区三区在线观看 | 先锋av资源在线 | 国产亚洲一区二区三区在线 | 国产一区久久精品 | 国家一级黄色片 | 精品国产99 | 国产在线播放一区二区三区 |