요즘 애용하고있는 랜덤 파일 선택기
이전 거처 멸망 전에 만든 방주가 감당이 안되서 gpt로 프로그램 짜봤는데 생각보다 유용한것 같아서 평소에 받은 은혜를 갚아보기 위해서 올려봄.
세줄요약 있음
1
실행하면 이런 화면이고, 여기서 방주 주소 추가랑 제거 가능함.
코드
import os
import random
import tkinter as tk
from tkinter import filedialog, messagebox, Listbox, Scrollbar, END, SINGLE
import subprocess
import json
import webbrowser
import re
CONFIG_FILE = "folder_config.json"
ARCHIVE_EXTENSIONS = ('.zip', '.7z', '.rar', '.egg')
class ArchiveFileSelectorApp:
def __init__(self, root):
self.root = root
self.root.title("랜덤 압축 파일 선택기")
self.folder_list = []
# Load saved folders
self.load_folder_list()
# Frame for folder list and scrollbar
list_frame = tk.Frame(root)
list_frame.pack(padx=10, pady=10)
self.folder_listbox = Listbox(list_frame, selectmode=SINGLE, width=60)
self.folder_listbox.pack(side=tk.LEFT, fill=tk.BOTH, expand=True)
scrollbar = Scrollbar(list_frame, orient="vertical")
scrollbar.config(command=self.folder_listbox.yview)
scrollbar.pack(side=tk.RIGHT, fill=tk.Y)
self.folder_listbox.config(yscrollcommand=scrollbar.set)
# Populate listbox
for folder in self.folder_list:
self.folder_listbox.insert(END, folder)
# Frame for buttons
button_frame = tk.Frame(root)
button_frame.pack(padx=10, pady=10)
self.add_button = tk.Button(button_frame, text="폴더 추가", command=self.add_folder)
self.add_button.grid(row=0, column=0, padx=5)
self.remove_button = tk.Button(button_frame, text="선택한 폴더 제거", command=self.remove_selected_folder)
self.remove_button.grid(row=0, column=1, padx=5)
self.open_button = tk.Button(button_frame, text="랜덤 압축 파일 열기", command=self.open_random_archive)
self.open_button.grid(row=0, column=2, padx=5)
# Save folders on close
self.root.protocol("WM_DELETE_WINDOW", self.on_close)
def add_folder(self):
folder = filedialog.askdirectory(title="추가할 폴더 선택")
if folder and folder not in self.folder_list:
self.folder_list.append(folder)
self.folder_listbox.insert(END, folder)
def remove_selected_folder(self):
selected = self.folder_listbox.curselection()
if selected:
index = selected[0]
self.folder_listbox.delete(index)
del self.folder_list[index]
def open_random_archive(self):
archive_files = []
for folder in self.folder_list:
for dirpath, _, filenames in os.walk(folder):
for filename in filenames:
if filename.lower().endswith(ARCHIVE_EXTENSIONS):
full_path = os.path.abspath(os.path.join(dirpath, filename))
archive_files.append(full_path)
if archive_files:
selected_file = random.choice(archive_files)
subprocess.run(f'explorer /select,"{selected_file}"', shell=True)
# Check for RJ or VJ code in filename
filename = os.path.basename(selected_file)
match = re.search(r'(RJ|VJ)(\d+)', filename, re.IGNORECASE)
if match:
code = match.group(0).upper()
prefix = code[:2]
if prefix == 'RJ':
url = f'https://www.dlsite.com/maniax/work/=/product_id/{code}.html'
elif prefix == 'VJ':
url = f'https://www.dlsite.com/pro/work/=/product_id/{code}.html'
webbrowser.open(url)
else:
messagebox.showinfo("알림", "선택된 폴더들에서 압축 파일(.zip, .7z, .rar, .egg)을 찾을 수 없습니다.")
def load_folder_list(self):
if os.path.exists(CONFIG_FILE):
try:
with open(CONFIG_FILE, 'r', encoding='utf-8') as f:
self.folder_list = json.load(f)
except Exception as e:
print(f"폴더 목록 로드 실패: {e}")
self.folder_list = []
def save_folder_list(self):
try:
with open(CONFIG_FILE, 'w', encoding='utf-8') as f:
json.dump(self.folder_list, f, ensure_ascii=False, indent=2)
except Exception as e:
print(f"폴더 목록 저장 실패: {e}")
def on_close(self):
self.save_folder_list()
self.root.destroy()
# Run the app
if __name__ == "__main__":
root = tk.Tk()
app = ArchiveFileSelectorApp(root)
root.mainloop()
기능
다중 폴더 선택 가능
지정 폴더 내의 하위 폴더에서도 압축파일 검색 가능
지금 .zip .7z .rar .egg 파일 검색 됨
파일명에 RJ나 VJ 있으면 컴터 기본 브라우저로 DL링크 열어줌
*코드 수정해서 쓸사람은 알아서 수정해 gpt 코딩 잘하더라
젤다
https://kio.ac/c/cwMCZA5AmJQ_b36cgd45Cb
세줄요약
방주 양이 감당이 안되서 랜덤 선택기 만듦
쓸사람 써라
복구 항상 고맙다
13
공지
AI 이미지 관련 공지 및 관련 규정 수정 공지
1uF
05/02
61200
22
AI 이미지 관련 공지 및 관련 규정 수정 공지
공지
1uF
05/02 61200 22
공지
‼️뉴비 필독 가이드‼️
1uF
05/02
91943
134
‼️뉴비 필독 가이드‼️
공지
1uF
05/02 91943 134
공지
🔔[필독] 채널 규정 & 신문고 (2026 04 05~)
SK
04/05
205971
-25
🔔[필독] 채널 규정 & 신문고 (2026 04 05~)
공지
SK
04/05 205971 -25
공지
🔔[필독] 탭 별 이용 가이드 (20260206~)
Etrick
02/05
254281
-41
🔔[필독] 탭 별 이용 가이드 (20260206~)
공지
Etrick
02/05 254281 -41
공지
[필독] 서브에 자주 올라오는 여러 가지 질문 모음 (20251026~)
SK
05/17/25
1244352
-14
[필독] 서브에 자주 올라오는 여러 가지 질문 모음 (20251026~)
공지
SK
05/17/25 1244352 -14
미번
[미번/번역요청] REC 0.5.2.0.2
fjdudhshe
05/02
8823
35
[미번/번역요청] REC 0.5.2.0.2
미번
fjdudhshe
05/02 8823 35
야짤
최근 본 농짤중에서 젤 좋았던거
ynynaagjia
05/02
10487
27
최근 본 농짤중에서 젤 좋았던거
야짤
ynynaagjia
05/02 10487 27
영상
(AI,GIF) [Mikitoon] Hitoyo
ArIso
05/02
24639
141
(AI,GIF) [Mikitoon] Hitoyo
영상
ArIso
05/02 24639 141
영상
마키마 & 덴지 (체인소맨)
브레머튼
05/02
20770
128
마키마 & 덴지 (체인소맨)
영상
브레머튼
05/02 20770 128
영상
한운 (원신)
브레머튼
05/02
10493
75
한운 (원신)
영상
브레머튼
05/02 10493 75
야짤
꺄아아악 치한이야!!!
gpsel157
05/02
20753
45
꺄아아악 치한이야!!!
야짤
gpsel157
05/02 20753 45
영상
[수간] 카테리나 & 머트 (킹덤컴2)
브레머튼
05/02
16253
81
[수간] 카테리나 & 머트 (킹덤컴2)
영상
브레머튼
05/02 16253 81
소리
[보이스코믹][구매보급][한] 치한박멸 운동
책먹는망아지
05/02
15770
107
[보이스코믹][구매보급][한] 치한박멸 운동
소리
책먹는망아지
05/02 15770 107
번역
[구매보급/도트/이지번역] RJ01584572 여동생 H –짧은 하루– Ver1.0.2
사과체스
05/02
64581
258
[구매보급/도트/이지번역] RJ01584572 여동생 H –짧은 하루– Ver1.0.2
번역
사과체스
05/02 64581 258
영상
[요청복구] as109 수란아 水蘭児凌辱 모음집
transfiction
05/02
17549
73
[요청복구] as109 수란아 水蘭児凌辱 모음집
영상
transfiction
05/02 17549 73
미번
[구매보급, 번역요청] RJ01596048 蟲ドリーム 寝落ちYtuberとバズの夜
sidewinder
05/02
20114
29
[구매보급, 번역요청] RJ01596048 蟲ドリーム 寝落ちYtuberとバズの夜
미번
sidewinder
05/02 20114 29
번역
[AI번역][RJ251926] TS마법소녀 나오!! 2nd (패치파일만)
호빵할배
05/02
24256
99
[AI번역][RJ251926] TS마법소녀 나오!! 2nd (패치파일만)
번역
호빵할배
05/02 24256 99
미번
[버전업] [구매보급] RJ01214867 둘만의 생활_ver1.67 (26.05.01)
gkqisq
05/02
7476
47
[버전업] [구매보급] RJ01214867 둘만의 생활_ver1.67 (26.05.01)
미번
gkqisq
05/02 7476 47
야짤
모리노 린제 순애
kifbodo245
05/02
7715
33
모리노 린제 순애
야짤
kifbodo245
05/02 7715 33
동인
[chalies] 이 자식이! 2 (냥코대전쟁 동인지)
ashgray
05/02
11781
54
[chalies] 이 자식이! 2 (냥코대전쟁 동인지)
동인
ashgray
05/02 11781 54
영상
게임하면서 섹스도 하는 이본 (엔드필드)
브레머튼
05/02
18723
124
게임하면서 섹스도 하는 이본 (엔드필드)
영상
브레머튼
05/02 18723 124
야짤
AI+NTR) 교미를 잘하는 코미양
177523
05/02
9279
30
AI+NTR) 교미를 잘하는 코미양
야짤
177523
05/02 9279 30
영상
[SnkGirlRyona] 무겐 (M.U.G.E.N./mugen) 루갈 vs. 모음집
Kai
05/02
17384
86
[SnkGirlRyona] 무겐 (M.U.G.E.N./mugen) 루갈 vs. 모음집
영상
Kai
05/02 17384 86
소리
[요청복구] [한국어 자막판] 홀록 사미도리 마법소녀 시리즈 [총 5편]
9ya
05/02
14063
66
[요청복구] [한국어 자막판] 홀록 사미도리 마법소녀 시리즈 [총 5편]
소리
9ya
05/02 14063 66
동인
[smasochist] SM Diary3 557-577
ㅇㅇ
05/02
13020
23
[smasochist] SM Diary3 557-577
동인
ㅇㅇ
05/02 13020 23
동인
[さるら] 수치의 목욕탕중계
bender
05/02
21529
74
[さるら] 수치의 목욕탕중계
동인
bender
05/02 21529 74
복구
[요청복구] RJ313210 전생했더니 서큐버스였던 건
toung
05/02
21545
57
[요청복구] RJ313210 전생했더니 서큐버스였던 건
복구
toung
05/02 21545 57
일반
믿을 건 미국 뿐이야
starrr
05/02
6868
78
믿을 건 미국 뿐이야
일반
starrr
05/02 6868 78
미번
[구매보급][번역요청][청아?] sdt 서클 4개 구매보급 (문제시 삭제)
daxk9517
05/02
8118
32
[구매보급][번역요청][청아?] sdt 서클 4개 구매보급 (문제시 삭제)
미번
daxk9517
05/02 8118 32
야짤
AI, 셀레스포니아) 시민들 사이 지나가는 장면
miso5
05/02
16176
74
AI, 셀레스포니아) 시민들 사이 지나가는 장면
야짤
miso5
05/02 16176 74
영상
[요청복구] Br@n,버) 노엘 단장 시리즈 모음
비밀봉투
05/02
20227
120
[요청복구] Br@n,버) 노엘 단장 시리즈 모음
영상
비밀봉투
05/02 20227 120
영상
[구매보급] 영상 2개 RJ01280079, RJ01518050
어린이사랑꾼데미갓
05/02
19076
122
[구매보급] 영상 2개 RJ01280079, RJ01518050
영상
어린이사랑꾼데미갓
05/02 19076 122
미번
[구매보급,한패는 번역에 1.0]LOVING DEAD GIRL 러빙・데드・걸 v1.0.2
fuch1324
05/02
13860
102
[구매보급,한패는 번역에 1.0]LOVING DEAD GIRL 러빙・데드・걸 v1.0.2
미번
fuch1324
05/02 13860 102
미번
[번역요청] LilyChanRoshutsu AlphaDemo v0.3 체험판
zoo5191
05/02
8422
22
[번역요청] LilyChanRoshutsu AlphaDemo v0.3 체험판
미번
zoo5191
05/02 8422 22
번역
[AI번역]RJ01473408 능력 있는 후배 아오이짱! v1.0.2
coupon
05/02
50370
242
[AI번역]RJ01473408 능력 있는 후배 아오이짱! v1.0.2
번역
coupon
05/02 50370 242
s/somisoft
• 143,985 subscribers여러가지 다루는 서브
Created 05/17/2025, 14:58:43