카테고리 없음
이글루 홈캠 PC에서 파일명 일괄 변경(9시간 증가) 프로그램
이승보
2025. 4. 9. 11:11
728x90
이글루 홈캠! PC 파일명 일괄 변경
아기를 키우면서 이글루 홈캠을 너무 잘 쓰고 있는데..
가끔씩 보관하고 싶은 모먼트가 나오면 PC로 옮겨서 백업을 하는데 이상한 점을 발견했다.
아니...왜 시간이...이상한거죠? 00시에 저렇게 환하게 우리 아이가 있을리가 없잖아요ㅜㅜ
이글루 폰 앱에서는 시간이 정상적으로 보이는데 PC에서 보면 시간이 항상 저렇게 보여서 이상해서 카메라 설정도 만져보고 이것저것 하다가... 공식 사이트에 문의를 하니 아래와 같이 답변 받았다.
이럴수가...몇 십개의 파일을 일일이 파일 이름 바꾸기도 귀찮아서 미루고 있던 찰나
최근에 챗GPT랑 파이썬으로 이것저것 프로그램 만드는 재미가 들어서 만들었더니 잘 작동한다!
혹시나 필요하신 분들이 있으실까봐 공유드리며, exe파일이라서 해킹, 바이러스에 불안하신 분들은 아래 코드를 직접 파이썬 실행시켜주시면 됩니다.
Egloo_HomeCame_FileNameChange.zip
7.56MB
import os
import tkinter as tk
from tkinter import filedialog, messagebox
from datetime import datetime, timedelta
import re
def add_9_hours_to_filename(filename):
pattern = r'^(\d{6})_(\d{6})_(\d{6})_(.+)\.mp4$'
match = re.match(pattern, filename)
if not match:
return None
date_str, start_time_str, end_time_str, suffix = match.groups()
date_prefix = "20" + date_str # 예: 250409 → 20250409
try:
start_dt = datetime.strptime(date_prefix + start_time_str, "%Y%m%d%H%M%S") + timedelta(hours=9)
end_dt = datetime.strptime(date_prefix + end_time_str, "%Y%m%d%H%M%S") + timedelta(hours=9)
except Exception as e:
print("시간 변환 오류:", e)
return None
new_date_str = start_dt.strftime("%y%m%d")
new_start_time = start_dt.strftime("%H%M%S")
new_end_time = end_dt.strftime("%H%M%S")
new_filename = f"{new_date_str}_{new_start_time}_{new_end_time}_{suffix}.mp4"
return new_filename
def rename_files_in_folder():
folder_path = folder_path_var.get()
if not folder_path:
messagebox.showwarning("경고", "먼저 폴더를 선택해주세요.")
return
renamed_count = 0
for filename in os.listdir(folder_path):
if not filename.lower().endswith(".mp4"):
continue
new_filename = add_9_hours_to_filename(filename)
if new_filename and new_filename != filename:
src = os.path.join(folder_path, filename)
dst = os.path.join(folder_path, new_filename)
if not os.path.exists(dst):
os.rename(src, dst)
print(f"✔️ {filename} → {new_filename}")
renamed_count += 1
else:
print(f"⚠️ 이미 존재하는 파일: {new_filename}")
else:
print(f"❌ 형식이 맞지 않거나 변환 실패: {filename}")
result_var.set(f"{renamed_count}개의 파일 이름이 변경되었습니다.")
messagebox.showinfo("작업 완료", f"{renamed_count}개의 파일이 변경되었습니다.")
def select_folder():
folder_selected = filedialog.askdirectory()
if folder_selected:
folder_path_var.set(folder_selected)
result_var.set("") # 이전 결과 초기화
# ---------- GUI 구성 ----------
root = tk.Tk()
root.title("MP4 파일 이름 9시간 변환기")
root.geometry("500x280")
root.resizable(False, False)
# 설명 텍스트
label = tk.Label(root, text="1. 폴더를 선택하고\n2. '변환 실행' 버튼을 눌러주세요.", pady=10)
label.pack()
# 선택된 폴더 경로 Entry + 변수
folder_path_var = tk.StringVar()
folder_entry = tk.Entry(root, textvariable=folder_path_var, width=60, state="readonly", justify="center")
folder_entry.pack(pady=5)
# 폴더 선택 버튼
select_button = tk.Button(root, text="📁 폴더 선택", command=select_folder, width=20, height=2)
select_button.pack(pady=5)
# 변환 실행 버튼
execute_button = tk.Button(root, text="▶ 변환 실행", command=rename_files_in_folder, width=20, height=2, bg="lightblue")
execute_button.pack(pady=10)
# 결과 메시지 출력
result_var = tk.StringVar()
result_label = tk.Label(root, textvariable=result_var, fg="green", font=("Arial", 11))
result_label.pack(pady=10)
root.mainloop()
🎥 MP4 파일 이름 자동 변경 프로그램 (Egloo 홈캠용)
✅ 프로그램 목적
Egloo 홈캠(또는 기타 보안캠)으로 저장된 영상 파일들의 이름은
YYMMDD_시작시간_종료시간_접미사.mp4 형식으로 저장됩니다.
예:
CopyEdit
250409_005545_010545_C.mp4
하지만 이 시간이 UTC 기준으로 저장되기 때문에, 실제 한국 시간과는 9시간 차이가 납니다.
그래서 매번 수동으로 이름을 고치기 번거로웠고,
이를 자동으로 처리하는 간단한 프로그램을 만들게 되었습니다!
🛠️ 주요 기능
- .mp4 형식의 파일명을 자동으로 변환
- 시작 시간과 종료 시간에 +9시간을 적용하여 한국 시간 기준으로 수정
- 날짜도 자동으로 계산 (예: 자정 넘어가면 다음 날로 처리됨)
- GUI 기반 인터페이스로 누구나 쉽게 사용 가능
- 변환할 폴더 선택 → "변환 실행" 버튼 클릭만 하면 끝!
💡 사용한 기술 (코딩 구성)
- 언어: Python
- GUI 라이브러리: tkinter
- 시간 처리: datetime, timedelta
- 파일명 처리: os, re (정규표현식)
- 실행 파일로 패키징: pyinstaller
🖥️ 실행 방식
- 폴더 선택 → 선택한 경로가 GUI에 표시됨
- 변환 실행 버튼 클릭
- 파일명이 자동으로 9시간 뒤 시간 기준으로 변경됨
- 변경 완료된 파일 개수 표시
✅ 예시
원본 파일명변경된 파일명
250409_005545_010545_C.mp4 | 250409_095545_100545_C.mp4 |
250407_233552_234552_C.mp4 | 250408_083552_084552_C.mp4 |
728x90
반응형