import os
import markdown
# 获取输入和输出文件夹路径,如果没有输入就使用默认路径
input_folder = input("请输入输入文件夹路径(默认为'./text'):") or './text'
output_folder = input("请输入输出文件夹路径(默认为'./Mytext'):") or './Mytext'
# 检查输入和输出文件夹是否存在,不存在则创建文件夹
os.makedirs(input_folder, exist_ok=True)
os.makedirs(output_folder, exist_ok=True)
# 获取Markdown文件名列表
md_file_list = [f for f in os.listdir(input_folder) if f.endswith('.txt')]
md_file_list.sort()
# 每四篇文章进行合并
for i in range(0, len(md_file_list), 4):
output_filename = md_file_list[i+3][:-4] + '.txt'
output_path = os.path.join(output_folder, output_filename)
output_list = []
for md_filename in md_file_list[i:i+4]:
with open(os.path.join(input_folder, md_filename), 'r', encoding='utf-8') as md_file:
md_content = md_file.read()
# 将Markdown格式转换为html格式
html_content = markdown.markdown(md_content)
title = md_filename[:-4]
output_list.append((title, html_content))
# 写入输出文件
with open(output_path, 'w', encoding='utf-8') as output_file:
for title, html_content in output_list:
output_file.write(f"<h3>{title}</h3>\n{html_content}\n")
# 输出详细信息
print(f"合成第{i//4+1}篇文章:{output_filename},包含以下四篇文章:")
for title, _ in output_list:
print(title)