import os import uuid import dashscope from A1_GenerateMarkdown import * from A2_MarkdownToPptx import * from A3_MarkdownToDocx import * # 获取课程名称 def get_course_name() -> str: """获取规范格式的课程名称""" prompt = '''功能:输入课程名称生成教案及课件。 请按以下格式输入:小学数学三角形内角和 请输入:''' while True: course = input(prompt).strip() if course: return course print("⚠️ 输入不能为空,请重新输入!") if __name__ == '__main__': # 获取课程名称 course_name = get_course_name() print(f"即将生成【{course_name}】教学大纲...") guid_v4 = str(uuid.uuid4()) dashscope.api_key = MarkdownGenerator.API_KEY generate_document( course_name=course_name, output_path=mdWorkingPath / (guid_v4 + '.md') ) # 生成PPT # 硬编码配置参数 FIXED_MD_PATH = str(mdWorkingPath) + '/' + guid_v4 + '.md' # 模板名称 TEMPLATE_NAME = "通用" # 输出路径 OUTPUT_PATH = "D:\dsWork\QingLong\output5.pptx" # 执行生成 generate(TEMPLATE_NAME, OUTPUT_PATH, FIXED_MD_PATH) print(f"PPT生成成功!保存路径:{OUTPUT_PATH}") # 生成 DOCX OUTPUT_DOCX = r"D:\dsWork\QingLong\output5.docx" convert_md_to_docx( input_md=FIXED_MD_PATH, output_docx=OUTPUT_DOCX, reference_template=str(Path(__file__).parent) + r"\left-aligned-template.docx" ) print(f"DOCX生成成功!保存路径:{OUTPUT_DOCX}") # 删除FIXED_MD_PATH os.remove(FIXED_MD_PATH)