Python으로 업로드한 후 이미지 크기를 압축하는 방법
PHPz
PHPz 2017-05-18 10:52:27
0
3
770

저는 flask框架,图片处理用的是pillow를 사용합니다.

일반적으로 업로드는 루프files,然后逐个file.save()
我希望在save完成后,执行pillow압축 논리로 수행됩니다.

그런데save是一个I/O操作,存在延迟性,如果直接在file.save()下面直接调用pillowImage.open는 이미지 데이터가 이미지에 기록되지 않아서 오류가 발생하는 것 같습니다.

무엇을 해야 할까요?

PHPz
PHPz

学习是最好的投资!

모든 응답(3)
習慣沉默

으아악

저장 작업이 비동기적이지 않은 것을 알 수 있습니다


업데이트

copyfileobj는 차단 작업입니다

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

阿神

실제로 이러한 유형의 이미지 처리에는 Alibaba Cloud의 OSS 또는 Qiniu 및 기타 유사한 저장 기능을 직접 사용하는 것이 더 좋습니다. 이미지를 OOS에 직접 업로드한 다음 향후에는 지정된 이미지 처리를 위해 특수 접미사를 호출합니다. 또한 주소 처리를 위해 OSS에 액세스하게 됩니다. 이는 이미지를 처리하기 위해 자체 서버를 사용하는 부담을 피할 수 있을 뿐만 아니라 액세스 압력을 줄여 프로그램의 복잡성을 줄이는 데에도 매우 유익합니다.

某草草

저자는 Image.open의 fp 매개변수를 살펴보았습니다. 파일 이름(문자열), pathlib.Path 객체 또는 파일 객체 PIL.Image.open(fp, mode='r')을 사용할 수도 있습니다.

파일을 Image.open(파일)에 직접 전달하면 됩니다!

으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿