요즘 애용하고있는 랜덤 파일 선택기
이전 거처 멸망 전에 만든 방주가 감당이 안되서 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
1244355
-14
[필독] 서브에 자주 올라오는 여러 가지 질문 모음 (20251026~)
공지
SK
05/17/25 1244355 -14
일반
아크메시아 기번 중... 엠툴 번역 소식들음(빙 번역 무료)
움떡알림몬
05/25
2046
2
아크메시아 기번 중... 엠툴 번역 소식들음(빙 번역 무료)
일반
움떡알림몬
05/25 2046 2
피드백
마나카 버그 제보
ㅇㅇ
05/25
3371
2
마나카 버그 제보
피드백
ㅇㅇ
05/25 3371 2
요청
[복구요청] RJ01378937 거유 자매( 巨乳姉妹)
lehulehu
05/25
2563
1
[복구요청] RJ01378937 거유 자매( 巨乳姉妹)
요청
lehulehu
05/25 2563 1
질문
그리자이아 시리즈
Y.j
05/25
3181
0
그리자이아 시리즈
질문
Y.j
05/25 3181 0
동인
[Katsura airi] 들끓던 무렵에 동창회편
김덕배
05/25
22460
115
[Katsura airi] 들끓던 무렵에 동창회편
동인
김덕배
05/25 22460 115
질문
야겜 뭔지아는사람
hwbdbbx
05/25
1403
0
야겜 뭔지아는사람
질문
hwbdbbx
05/25 1403 0
야짤
아크메시아 CG언팩
브라더스
05/25
3735
6
아크메시아 CG언팩
야짤
브라더스
05/25 3735 6
일반
아크메시아 기번중 찐빠 나서 gemini에게 물어봄
움떡알림몬
05/25
2016
1
아크메시아 기번중 찐빠 나서 gemini에게 물어봄
일반
움떡알림몬
05/25 2016 1
일반
간만에 오니 ntr 게임이 하고 싶어지는군
서울우유전용목장
05/25
1325
0
간만에 오니 ntr 게임이 하고 싶어지는군
일반
서울우유전용목장
05/25 1325 0
질문
빗소리로 가득차는 밤 질문
rlawjddms
05/25
2060
0
빗소리로 가득차는 밤 질문
질문
rlawjddms
05/25 2060 0
요청
[복구요청] [RJ01557970] [ベルゼブブ] 너스콜 경비원 본편
누궁가
05/25
1978
0
[복구요청] [RJ01557970] [ベルゼブブ] 너스콜 경비원 본편
요청
누궁가
05/25 1978 0
질문
키리키로이드질문입니다
giiif
05/25
1547
0
키리키로이드질문입니다
질문
giiif
05/25 1547 0
질문
포레스티아 여신 공물 어떤게 점수가 제일높아요?
moka1
05/25
1456
0
포레스티아 여신 공물 어떤게 점수가 제일높아요?
질문
moka1
05/25 1456 0
질문
이거 폰트는 왜 잘리는 거임?
ㅇㅇ
05/25
2511
1
이거 폰트는 왜 잘리는 거임?
질문
ㅇㅇ
05/25 2511 1
일반
케모노 사이트가 살아는있는데
tlrekddldydwk
05/25
2425
-2
케모노 사이트가 살아는있는데
일반
tlrekddldydwk
05/25 2425 -2
동인
ai번역 고전) 세피리아 하드2
1Q2W3E4R
05/25
8016
35
ai번역 고전) 세피리아 하드2
동인
1Q2W3E4R
05/25 8016 35
질문
군청의 마녀 원래 이런 화면인가요?
tmddl
05/25
3277
-2
군청의 마녀 원래 이런 화면인가요?
질문
tmddl
05/25 3277 -2
요청
복구요청 [구매보급] [버전업] RJ01373814 메시아 오브 로리타 ~모험가와 음문의 소녀~ 1.09 (26.03.13 )(26.05.17수정)(재복구)
midiair
05/25
1827
0
복구요청 [구매보급] [버전업] RJ01373814 메시아 오브 로리타 ~모험가와 음문의 소녀~ 1.09 (26.03.13 )(26.05.17수정)(재복구)
요청
midiair
05/25 1827 0
동인
[enari][ntr][ai번]성행위 실습을 병결했더니 페어의 그녀가 마음대로 유학생과 짜여져 외국인 거근으로 파코 되어 버린 이야기1~4
latte
05/25
27424
117
[enari][ntr][ai번]성행위 실습을 병결했더니 페어의 그녀가 마음대로 유학생과 짜여져 외국인 거근으로 파코 되어 버린 이야기1~4
동인
latte
05/25 27424 117
요청
[복구요청] RJ223032 // 로간12 ~앨리스들의 질과감촉~
타르
05/25
1673
1
[복구요청] RJ223032 // 로간12 ~앨리스들의 질과감촉~
요청
타르
05/25 1673 1
정보
속보)복수의야기리 또연기
sorbe123
05/25
4183
11
속보)복수의야기리 또연기
정보
sorbe123
05/25 4183 11
소리
[구매보급]섹서로이드는 전기 신부의 꿈을 꾸는가?~외 2개
이름뭐하지
05/24
8207
48
[구매보급]섹서로이드는 전기 신부의 꿈을 꾸는가?~외 2개
소리
이름뭐하지
05/24 8207 48
미번
[미번][번역요청](ntr) Rogue princess0.401
2sports
05/24
9767
12
[미번][번역요청](ntr) Rogue princess0.401
미번
2sports
05/24 9767 12
질문
호감도 게임
qkdqkddl26
05/24
2259
-2
호감도 게임
질문
qkdqkddl26
05/24 2259 -2
영상
청아,빵) pori (Mokusheep) 작가 신작 (구작)
교미의요정
05/24
28984
129
청아,빵) pori (Mokusheep) 작가 신작 (구작)
영상
교미의요정
05/24 28984 129
질문
게임 추천 부탁드립니다
mskdkkd
05/24
2201
0
게임 추천 부탁드립니다
질문
mskdkkd
05/24 2201 0
질문
럽코를 찾습니다...
totolo312
05/24
2202
0
럽코를 찾습니다...
질문
totolo312
05/24 2202 0
요청
[복구요청] RJ257127 에리와 7번째의 마법
als149
05/24
1820
2
[복구요청] RJ257127 에리와 7번째의 마법
요청
als149
05/24 1820 2
복구
[복구] 란스 (RANCE) 시리즈
스삐키뚜땨
05/24
22437
112
[복구] 란스 (RANCE) 시리즈
복구
스삐키뚜땨
05/24 22437 112
질문
임페리얼 나이트 진행이 막혔는데 도와주세요.
raima
05/24
2876
0
임페리얼 나이트 진행이 막혔는데 도와주세요.
질문
raima
05/24 2876 0
s/somisoft
• 143,985 subscribers여러가지 다루는 서브
Created 05/17/2025, 14:58:43