요즘 애용하고있는 랜덤 파일 선택기
이전 거처 멸망 전에 만든 방주가 감당이 안되서 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
61354
22
AI 이미지 관련 공지 및 관련 규정 수정 공지
공지
1uF
05/02 61354 22
공지
‼️뉴비 필독 가이드‼️
1uF
05/02
92066
134
‼️뉴비 필독 가이드‼️
공지
1uF
05/02 92066 134
공지
🔔[필독] 채널 규정 & 신문고 (2026 04 05~)
SK
04/05
206105
-25
🔔[필독] 채널 규정 & 신문고 (2026 04 05~)
공지
SK
04/05 206105 -25
공지
🔔[필독] 탭 별 이용 가이드 (20260206~)
Etrick
02/05
254443
-41
🔔[필독] 탭 별 이용 가이드 (20260206~)
공지
Etrick
02/05 254443 -41
공지
[필독] 서브에 자주 올라오는 여러 가지 질문 모음 (20251026~)
SK
05/17/25
1244432
-14
[필독] 서브에 자주 올라오는 여러 가지 질문 모음 (20251026~)
공지
SK
05/17/25 1244432 -14
미번
[미번/구매보급/번역요청] 비월선행록 스팀판 버전업 1.291
giraffeman
05/15
40203
118
[미번/구매보급/번역요청] 비월선행록 스팀판 버전업 1.291
미번
giraffeman
05/15 40203 118
야짤
[농]거근 쥬지 두개 로 뷰지파괴 커미션
412343
05/15
11629
29
[농]거근 쥬지 두개 로 뷰지파괴 커미션
야짤
412343
05/15 11629 29
영상
[복구] '카테니라& 머트 (수간') / '마키마 & 덴지 (체인소맨)' 영상 2개 복구
브레머튼
05/15
19813
79
[복구] '카테니라& 머트 (수간') / '마키마 & 덴지 (체인소맨)' 영상 2개 복구
영상
브레머튼
05/15 19813 79
동인
[ai번] 방과 후 아이 만들기 성교육 ~순수하면서 밝히는 발육 좋은 아이와 일대일 질내사정~
latte
05/15
27328
125
[ai번] 방과 후 아이 만들기 성교육 ~순수하면서 밝히는 발육 좋은 아이와 일대일 질내사정~
동인
latte
05/15 27328 125
동인
[AI 번역][tsyatu] 관심있는 그 아이의 빗치같은 비밀
히알룩스
05/15
22842
41
[AI 번역][tsyatu] 관심있는 그 아이의 빗치같은 비밀
동인
히알룩스
05/15 22842 41
후기 및 공략
지금까지 해본 게임 개인적인 추천 ntr위주
tttyu
05/15
18914
32
지금까지 해본 게임 개인적인 추천 ntr위주
후기 및 공략
tttyu
05/15 18914 32
야짤
ai)원신 스커크 선생님 참교육 2
ezmood
05/15
14405
68
ai)원신 스커크 선생님 참교육 2
야짤
ezmood
05/15 14405 68
동인
[Healthyman] (청아,보테배) 이리야쨩을 완전동의 (최면) 하에 엄마로 만드는 야한 책
밤하늘의신비
05/15
39797
162
[Healthyman] (청아,보테배) 이리야쨩을 완전동의 (최면) 하에 엄마로 만드는 야한 책
동인
밤하늘의신비
05/15 39797 162
동인
[Healthyman] (청아) 그 아이는 아저씨의 여자
밤하늘의신비
05/15
30669
126
[Healthyman] (청아) 그 아이는 아저씨의 여자
동인
밤하늘의신비
05/15 30669 126
야짤
ai) 움짤 몇개
Ghost
05/15
11630
33
ai) 움짤 몇개
야짤
Ghost
05/15 11630 33
야짤
스즈카의 고민 디테일 미쳤네
꼬냑
05/15
10470
20
스즈카의 고민 디테일 미쳤네
야짤
꼬냑
05/15 10470 20
소리
[구매보급]진심사랑 프린세스 ~임신시키는 간청×유혹을 받아들인×신부 수업⇒쾌락 타락♪
이름뭐하지
05/15
13868
66
[구매보급]진심사랑 프린세스 ~임신시키는 간청×유혹을 받아들인×신부 수업⇒쾌락 타락♪
소리
이름뭐하지
05/15 13868 66
동인
(청아) 내 아내가 낳아준 아내
밤하늘의신비
05/15
34732
87
(청아) 내 아내가 낳아준 아내
동인
밤하늘의신비
05/15 34732 87
작업현황
어서오세요! 어린이 만들기 온천 마을 1.01 손번역 작업 이제 시작
sjdwj
05/15
15032
66
어서오세요! 어린이 만들기 온천 마을 1.01 손번역 작업 이제 시작
작업현황
sjdwj
05/15 15032 66
영상
부현 (스타레일)
브레머튼
05/15
20675
65
부현 (스타레일)
영상
브레머튼
05/15 20675 65
복구
[요청복구] My Girlfriend Advanced to the Dancer class and she buffs everybody v1.1r
karuparu13
05/15
17454
31
[요청복구] My Girlfriend Advanced to the Dancer class and she buffs everybody v1.1r
복구
karuparu13
05/15 17454 31
동인
[직번] [zonta] 내 엄마는 동급생의 젖소 노예
maha1004
05/15
32764
58
[직번] [zonta] 내 엄마는 동급생의 젖소 노예
동인
maha1004
05/15 32764 58
복구
[복구] 무녀나 짐승귀 관련 시리즈
몬스터가아니다신이다
05/15
24959
45
[복구] 무녀나 짐승귀 관련 시리즈
복구
몬스터가아니다신이다
05/15 24959 45
야짤
ai, 찢) 야나기 부과장과 은밀한 성관계를 이어나갔다
kjh9304
05/15
7222
83
ai, 찢) 야나기 부과장과 은밀한 성관계를 이어나갔다
야짤
kjh9304
05/15 7222 83
야짤
AI) GPT용 H 스테이터스 프롬프트를 더 개량했음
날개 로봇
05/15
14677
30
AI) GPT용 H 스테이터스 프롬프트를 더 개량했음
야짤
날개 로봇
05/15 14677 30
창작
깐문지기 신캐구상 및 개발 방향
sushi
05/15
7185
26
깐문지기 신캐구상 및 개발 방향
창작
sushi
05/15 7185 26
정보
출시직전 신작 하나
ksw112
05/15
12815
30
출시직전 신작 하나
정보
ksw112
05/15 12815 30
영상
HC #248~268
Yuzu
05/15
29887
198
HC #248~268
영상
Yuzu
05/15 29887 198
야짤
원신 스커크선생님 쇼타따먹으려다 들켜서 참교육 (ai 176장 스압)
ezmood
05/15
17445
71
원신 스커크선생님 쇼타따먹으려다 들켜서 참교육 (ai 176장 스압)
야짤
ezmood
05/15 17445 71
영상
칸타렐라 (명조)
브레머튼
05/15
15539
89
칸타렐라 (명조)
영상
브레머튼
05/15 15539 89
영상
[Early Access] 힌덴부르크 (벽람항로)
브레머튼
05/15
19339
108
[Early Access] 힌덴부르크 (벽람항로)
영상
브레머튼
05/15 19339 108
영상
레바테인의 욕망 (엔드필드)
브레머튼
05/15
22223
81
레바테인의 욕망 (엔드필드)
영상
브레머튼
05/15 22223 81
야짤
AI) GPT로 뽑은 여주물 야겜 H 스테이터스 (프롬프트 추가)
날개 로봇
05/15
10585
28
AI) GPT로 뽑은 여주물 야겜 H 스테이터스 (프롬프트 추가)
야짤
날개 로봇
05/15 10585 28
영상
[복구] 고전 명작 야애니 모음
imakotou
05/15
21549
87
[복구] 고전 명작 야애니 모음
영상
imakotou
05/15 21549 87
창작
아리아드네 MZ 이식 102일 차 (주인공 디자인 및 EX 스토리 캐릭터 추가)
Code_Max
05/15
12457
60
아리아드네 MZ 이식 102일 차 (주인공 디자인 및 EX 스토리 캐릭터 추가)
창작
Code_Max
05/15 12457 60
s/somisoft
• 143,985 subscribers여러가지 다루는 서브
Created 05/17/2025, 14:58:43