방주 올라오는 거 하나씩 입력하기 귀찮아서 만든 코드
필요 프로그램: 파이썬
필요 브라우저: 크롬
파일 실행
링크가 추출된 사진
저기서 클릭하면 바로 dlsite나 getchu, steam으로 넘어감
import tkinter as tk
from tkinter import scrolledtext, messagebox
import re
import webbrowser
class MultiLinkGenerator:
def __init__(self, root):
self.root = root
self.root.title("링크 생성기")
self.root.geometry("850x700")
self.custom_font = ("Gmarket Sans TTF Medium", 16)
self.label = tk.Label(root, text="코드 입력:", font=self.custom_font)
self.label.pack(pady=15)
self.input_area = scrolledtext.ScrolledText(root, height=8, width=60, font=self.custom_font)
self.input_area.pack(pady=5, padx=20)
self.btn_convert = tk.Button(root, text="모든 링크 추출 및 생성", command=self.extract_and_generate,
bg="#28a745", fg="white", font=self.custom_font, padx=20)
self.btn_convert.pack(pady=15)
self.result_frame = tk.Frame(root)
self.result_frame.pack(fill="both", expand=True, padx=20, pady=10)
self.scrollbar = tk.Scrollbar(self.result_frame)
self.scrollbar.pack(side="right", fill="y")
self.listbox = tk.Listbox(self.result_frame, yscrollcommand=self.scrollbar.set, font=self.custom_font, width=60)
self.listbox.pack(side="left", fill="both", expand=True)
self.scrollbar.config(command=self.listbox.yview)
self.listbox.bind('', self.open_browser)
self.status = tk.Label(root, text="somisoft.", bd=1, relief=tk.SUNKEN, anchor=tk.W, font=("Gmarket Sans TTF Medium", 16))
self.status.pack(side=tk.BOTTOM, fill=tk.X)
def extract_and_generate(self):
raw_text = self.input_area.get("1.0", tk.END)
codes = sorted(list(set(re.findall(r'(RJ\d+|ST\d+|GC\d+)', raw_text))))
self.listbox.delete(0, tk.END)
if not codes:
messagebox.showinfo("알림", "코드 미발견")
return
for code in codes:
prefix = code[:2]
num = code[2:]
if prefix == "RJ":
url = f"https://www.dlsite.com/maniax/work/=/product_id/{code}.html"
elif prefix == "ST":
url = f"https://store.steampowered.com/app/{num}"
elif prefix == "GC":
url = f"https://www.getchu.com/sp/soft.phtml?id={num}"
else:
continue
self.listbox.insert(tk.END, f"[{prefix}] {url}")
self.status.config(text=f"총 {len(codes)}개의 링크 생성 완료.")
def open_browser(self, event):
selection = self.listbox.curselection()
if selection:
full_text = self.listbox.get(selection[0])
url = full_text.split("] ")[1] if "] " in full_text else full_text
self.status.config(text=f"🌐 브라우저 이동: {url}", fg="green")
webbrowser.open(url)
if __name__ == "__main__":
root = tk.Tk()
app = MultiLinkGenerator(root)
root.mainloop()
코드 복사해서 메모장으로 붙여넣기 후 py 파일로 저장
