반응형

사진과 동영상 파일을 정리하다 보면 종종 파일 이름이 타임스탬프 형식으로 된 파일이 있습니다.

ex) IMG_1406204196.JPG

 

타임스탬프 형식 이름의 파일이 한 개면 온라인으로 타임스탬프를 시간 형식으로 검색하여 바꾸는 사이트에서 바꾸면 되지만 파일이 여러개일 때에는 프로그래밍을 이용하여 바꾸는게 효율적인 방법이여서 해당 방법 공유드립니다.

 

필요하신분은 아래 코드를 수정하여 사용하시면 됩니다.

 

  코드 로직 설명

1. 파일 이름이 예를 들어 "IMG_1406204196.JPG" 인 경우 정규표현식으로 Timestamp 형식의 문자열을 찾습니다.

2. 프로그램은 파일 이름 중 Timestamp 형식인 1406204196 부분을 찾습니다.

3. 찾은 1406204196 부분을 datetime 모듈을 사용하여 날짜_시간 형식으로 변경합니다.

4. 날짜_시간 형식으로 변경한 결과 20140724_211636 이라는 결과가 반영됩니다.

 

위 코드를 실행하는 경우 아래 사진과 같은 결과를 얻을 수 있습니다.

결론적으로 IMG_1406204196.JPG => 20140724_211636.JPG 로 파일 이름이 변경됩니다.

실행 결과

 

필요하신 분은 아래 소스코드를 복사할 수 있게 해놓았으니

자유롭게 사용하시면 됩니다.

 

  파이썬 소스코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from datetime import datetime
import re
 
# 이미지 이름
image_nm = 'IMG_1406204196.JPG'        # 변경 전 파일명
 
# 파일 확장자 정보
ext_idx = image_nm.find('.')
ext = image_nm[ext_idx:]
 
# 파일 이름 내에 타임스탬프(timestamp) 형식 찾기
timestamp_pat = re.compile('1[0-7]{1}[0-9]{8}')
pat_match = timestamp_pat.findall(image_nm)
print(pat_match)    # 변경 전 타임스탬프
 
if len(pat_match) > 0:
    ut = int(pat_match[0])
    dt = datetime.fromtimestamp(ut).strftime('%Y%m%d_%H%M%S')
    print(dt)        # 변경 후 날짜_시간 형식
    print(dt+ext)    # 변경 후 파일명
cs

내용이 유용하셨다면 좋아요&댓글 부탁드립니다.
이 블로그를 이끌어갈 수 있는 강력한 힘입니다!

caul334@gmail.com

 

 

반응형

+ Recent posts