goodthings4me.tistory.com

파이썬 썸네일 이미지 만들기, 썸네일 이미지 용량 줄이기 코드를 연습하다가 작성해서 올려봅니다. 썸네일 이미지 용량 줄이기는 jpg 파일 저장 시 quality 100, 80, 60, 40, 20, 10으로 각각 저장합니다.
썸네일 이미지 만들기 및 썸네일 용량 줄이기
웹 사이트에 글 작성 시 중요한 이미지가 아닌 경우, 웹 서버 용량이나 트래픽을 고려하여 원본 이미지를 필요한 크기로 리사이징할 때가 있는데,
- 가급적 jpg 포맷 사용으로 하고(quality 60%~80% 적당),
- 만일 글자가 많은 이미지이면 png 포맷을 사용하며,
- 이미지의 정보인 메타데이터(exif)는 제거하는 것이 좋다고 합니다.
파이썬 라이브러리 requests로 인터넷에 있는 이미지를 다운로드하고, pillow와 pilkit을 활용하여 그 이미지를 jpg, png 썸네일 이미지로 만들고,
JPG 이미지 저장 시 썸네일 이미지 용량 줄이기 위해 quality 100, 80, 60, 40, 20, 10으로 설정하여 각각 썸네일 이미지를 생성하는 코드입니다.
파이썬 이미지 처리 라이브러리는 pillow와 pilkit을 사용하였고, 각 설치 명령은 다음과 같습니다.
pip install pillow
pip install pilkit
▶ 이미지를 다운로드 후 썸네일 이미지로 만들고, 썸네일 이미지 용량도 줄이는 코드
import requests
from PIL import Image
from pilkit.processors import Thumbnail
img_lib = requests.get('https://cdn.pixabay.com/photo/2012/03/01/00/55/flowers-19830_1280.jpg').content
path_file_name = './image/'
with open (path_file_name + 'flower.jpg', 'wb') as f:
f.write(img_lib)
flower_image = Image.open(path_file_name + 'flower.jpg')
process = Thumbnail(width=300,) # 인스턴스 생성 (width= , height= )
thumb_image = process.process(flower_image)
thumb_image.save(path_file_name + 'thumb-300.png')
for q in (100, 80, 60, 40, 20, 10):
thumb_image.save(path_file_name + f'thumb-{q}.jpg', quality=q)
- requests 이용하여 이미지 다운로드 (pixabay.com 이미지를 1개 대상으로 테스트)
- Image.open() 함수로 이미지 객체 생성 (flower_image)
- pilkit Thumbnail로 이미지 처리 인스턴스 생성 (process) 후 다운로드 이미지 썸네일 만들기
- 썸네일 이미지 png 포맷 저장, png 포맷은 quality 속성 사용하여 이미지 용량 줄이기
실행 결과

블로그 인기글
Windows 10 탐색기 느려지는 증상과 해결하는 방법
잘 작동하던 Windows 10 탐색기가 갑자기 느려지는 증상이 발생했을 때 어떻게 조치를 하는지 구글에서 찾아보니 많은 해결책들이 있었으나 어떤 것이 정확한 해결책인지는 알 수가 없었다. 그래서 해결방법이라고 제시한 것들을 정리해 보았다. 윈도우 탐색기가 느려지는 증상 해결 방법 어느 순간부터 응용프로그램(VS Code 등)에서 폴더 열기나 파일 불러오기를 했을 때 검색 팝업창이 안 뜨거나 열리는 시간이 엄청 느려지는 증상과, 더불어서 탐색기도 실행이 많이 느려지는 증상이 있었다. 기존에 사용하던 VS Code에 openpyxl 설치 후 실행이 느려지는 증상이 발생하더니 윈도우10 탐색기도 느려져서 사용할 수가 없었다. 노트북에 OS(Windows10)를 설치한지 1년이 다 되어가긴 했지만, 1개월 전..
goodthings4me.tistory.com
엑셀 시트 분리 저장 - 엑셀 파일의 시트를 분리하여 저장하기
엑셀을 사용하다 보면 엑셀 시트를 분리해서 저장해야 할 때가 있다. 최근에도 이런 경우가 발생하여 구글링 후 엑셀 시트 분리 업무를 수행하고 내친김에 다른 사람들도 사용할 수 있도록 파이썬 tkinter로 프로그램으로 만들어 보았다. Excel Sheets 분리 저장하는 프로그램(with 파이썬 Tkinter) ※ 프로그램 다운로드(네이버 MYBOX에서 공유) : ExcelSeparateSheets.zip ▶ 프래그램을 실행하면 다음과 같이 초기 화면이 보인다. 찾아보기 : 엑셀 파일이 있는 폴더를 선택한다. (프로그램이 있는 최상위 디렉터리가 열린다) 실행하기 : 프로그램 실행 버튼 상태 변경 순서 : 실행전 → 실행 중 → Sheet "OOO" 분리 저장 중 → 실행 완료 실행 결과 확인 : 엑셀 파..
goodthings4me.tistory.com
[엑셀] 근무연수 및 근무 개월수 계산하는 함수
직장을 다니다 보면 몇 년 몇 개월 또는 전체 며칠을 다니고 있는지 궁금할 때가 있다. 아니면, 총무나 인사 일을 할 때 직원들의 근속연수 또는 근속개월수 등을 계산하고 싶을 때도 있다. 이런 경우 엑셀 함수를 활용하면 어떨까!! 근무연수 및 근무 개월수 계산 함수 알아보기 엑셀에서 근무연수 또는 근무 개월수 계산하는 것은 datedif() 함수를 사용하면 간단하게 해결할 수 있다. 아래 이미지를 보면서 설명하면, 셀 E1에 기준일자를 입력하고, 근무연수를 구할 때는 =datedif(B3,$E$1,"Y")&"년" 을 입력한다. 근무개월수는 =datedif(B3,$E$1,"M")&"개월" 처럼 입력한다. 일수까지 파악할 때문 별로 없지만, 심심풀이로 구해보고 싶을 때 =datedif(B3,$E$1,"D")..
goodthings4me.tistory.com
'코딩 연습' 카테고리의 다른 글
네이버 주식 데이터 추출(크롤링), 판다스 그래프 그리기 (0) | 2024.03.30 |
---|---|
판다스 날짜 추출 - 연,월,일 분리 (0) | 2024.03.28 |
SQL 함수, 서브 쿼리 연습 (0) | 2023.12.08 |
DB, DBMS, 그리고 SQL 기본 문법 알아보기 (0) | 2023.12.08 |
ImportError: DLL load failed while importing win32clipboard (0) | 2023.11.13 |
댓글