import os import glob import shutil import gradio as gr from main import Run def download_novel(book_id: str): """ 下载指定小说 ID 并返回生成的 txt 文件路径 """ save_path = "downloads" # 清理旧文件 if os.path.exists(save_path): shutil.rmtree(save_path) os.makedirs(save_path, exist_ok=True) # 调用下载逻辑 Run(book_id, save_path) # 查找生成的 txt 文件 files = glob.glob(os.path.join(save_path, "*.txt")) if files: return files[0] else: return None # Gradio 界面 iface = gr.Interface( fn=download_novel, inputs=gr.Textbox(label="小说 ID"), outputs=gr.File(label="下载的小说文件"), title="番茄小说在线下载器", description="请输入小说 ID,点击下载后可获得 txt 文件。", ) if __name__ == "__main__": iface.launch(server_name="0.0.0.0", server_port=7860)