요즘 애용하고있는 랜덤 파일 선택기
이전 거처 멸망 전에 만든 방주가 감당이 안되서 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
질문
의술사 결혼 질문
su-park
05/25
2609
0
의술사 결혼 질문
질문
su-park
05/25 2609 0
야짤
AI) 모니터에 자신의 자궁구를 띄워 성교육을 하는 후우카
날개 로봇
05/25
9508
42
AI) 모니터에 자신의 자궁구를 띄워 성교육을 하는 후우카
야짤
날개 로봇
05/25 9508 42
야짤
ai 딸깍
aemeath
05/25
3680
10
ai 딸깍
야짤
aemeath
05/25 3680 10
정보
쯔꾸르 디아블로? 서바이버?
SML
05/25
3765
6
쯔꾸르 디아블로? 서바이버?
정보
SML
05/25 3765 6
질문
PUBPET 해보신본?
ㅁㄴㅇㄹ
05/25
1372
0
PUBPET 해보신본?
질문
ㅁㄴㅇㄹ
05/25 1372 0
질문
망가 하나 찾습니다....
아기돼지
05/25
2409
0
망가 하나 찾습니다....
질문
아기돼지
05/25 2409 0
일반
아크메시아 생각보단 슴슴하네
ㅇㅇ
05/25
2043
0
아크메시아 생각보단 슴슴하네
일반
ㅇㅇ
05/25 2043 0
야짤
ai 야짤
ocw0519
05/25
3375
6
ai 야짤
야짤
ocw0519
05/25 3375 6
요청
[복구요청] 4차업데이트 / [기번/노모/마개조/치트] 뇌신7 PUK 3.33 AI팩
gipiundun
05/25
2997
3
[복구요청] 4차업데이트 / [기번/노모/마개조/치트] 뇌신7 PUK 3.33 AI팩
요청
gipiundun
05/25 2997 3
일반
왜 페비츄삐는 야짤이 없는걸까
아이기스맘
05/25
3417
0
왜 페비츄삐는 야짤이 없는걸까
일반
아이기스맘
05/25 3417 0
일반
Muru no Honbako 이 작가 취향 ㅈㄴ 독특하네
kakaopagedaron
05/25
2063
0
Muru no Honbako 이 작가 취향 ㅈㄴ 독특하네
일반
kakaopagedaron
05/25 2063 0
질문
RPG성 강한 야겜 추천좀
amamimi
05/25
2048
-1
RPG성 강한 야겜 추천좀
질문
amamimi
05/25 2048 -1
야짤
ai, 블아 특식) 히비키의 치어리딩이 너무 야해서 잔뜩 질내사정 해줬다
kjh9304
05/25
9047
98
ai, 블아 특식) 히비키의 치어리딩이 너무 야해서 잔뜩 질내사정 해줬다
야짤
kjh9304
05/25 9047 98
요청
[복구요청][RJ01373159]건방진 여동생은 빈틈투성이! ~ 쌘척하는 메스가키 여동생을 마구 가버리게 하자~
인간
05/25
2705
3
[복구요청][RJ01373159]건방진 여동생은 빈틈투성이! ~ 쌘척하는 메스가키 여동생을 마구 가버리게 하자~
요청
인간
05/25 2705 3
번역
아크메시아 Mtool 전용 번역 사전
움떡알림몬
05/25
26659
63
아크메시아 Mtool 전용 번역 사전
번역
움떡알림몬
05/25 26659 63
질문
의술사 레벨업 공격력이랑 체력만 올라가는겨?
votmvkdlsej
05/25
2383
0
의술사 레벨업 공격력이랑 체력만 올라가는겨?
질문
votmvkdlsej
05/25 2383 0
질문
영상 또는 작가를 찾고잇읍니다.
bungchan
05/25
972
0
영상 또는 작가를 찾고잇읍니다.
질문
bungchan
05/25 972 0
질문
님들 시퀄 재밌음? 스토리어떰?
votmvkdlsej
05/25
1512
1
님들 시퀄 재밌음? 스토리어떰?
질문
votmvkdlsej
05/25 1512 1
요청
(복구요청)누키타시1, 2, 어펜드
mussssa
05/25
1966
0
(복구요청)누키타시1, 2, 어펜드
요청
mussssa
05/25 1966 0
정보
『철부지 고양이 에르샤』 ver1.04 설명 & ver1.05를 향해
ㅇㅇ
05/25
5112
21
『철부지 고양이 에르샤』 ver1.04 설명 & ver1.05를 향해
정보
ㅇㅇ
05/25 5112 21
일반
트랜스퍼잇 진짜 다운속도 답답해 뒤지겠네
koyate
05/25
1201
-1
트랜스퍼잇 진짜 다운속도 답답해 뒤지겠네
일반
koyate
05/25 1201 -1
질문
비타퀘2 애프터 스토리 질문
Creampie
05/25
1628
0
비타퀘2 애프터 스토리 질문
질문
Creampie
05/25 1628 0
일반
ㅅㅍ) 마인드 류다 순애 루트 있는 줄 알고 했는데
yellowcape
05/25
2200
0
ㅅㅍ) 마인드 류다 순애 루트 있는 줄 알고 했는데
일반
yellowcape
05/25 2200 0
질문
던브) 마족 무르무르 날먹하는법 없슴요?
fusbriwidhei32
05/25
1492
0
던브) 마족 무르무르 날먹하는법 없슴요?
질문
fusbriwidhei32
05/25 1492 0
질문
카린의 형무소 세이브파일 위치 아시는분 계신가요?
alpha123ded
05/25
3344
0
카린의 형무소 세이브파일 위치 아시는분 계신가요?
질문
alpha123ded
05/25 3344 0
미번
[미번][요청복구]RJ01220958 NTRRPG2 ~이질적인 마을과 침식된 마음~
okjack
05/25
7992
18
[미번][요청복구]RJ01220958 NTRRPG2 ~이질적인 마을과 침식된 마음~
미번
okjack
05/25 7992 18
요청
[복구 요청] 노출(장탈) 기사 님포리아 v1.07
gardner1257
05/25
6417
1
[복구 요청] 노출(장탈) 기사 님포리아 v1.07
요청
gardner1257
05/25 6417 1
영상
레이블 (니케)
브레머튼
05/25
15649
113
레이블 (니케)
영상
브레머튼
05/25 15649 113
질문
Divagate 패스워드 얻고 더 진행이 안 됨
ㅁㄴㅇㄹ
05/25
1659
0
Divagate 패스워드 얻고 더 진행이 안 됨
질문
ㅁㄴㅇㄹ
05/25 1659 0
일반
최근에 미연시 입문했는데 개빡치는 점
shiroi
05/25
1563
-7
최근에 미연시 입문했는데 개빡치는 점
일반
shiroi
05/25 1563 -7
s/somisoft
• 143,985 subscribers여러가지 다루는 서브
Created 05/17/2025, 14:58:43