恢复所有项目文件
This commit is contained in:
67
source/scripts/remove_10content.py
Normal file
67
source/scripts/remove_10content.py
Normal file
@@ -0,0 +1,67 @@
|
||||
import argparse
|
||||
import re
|
||||
|
||||
def parse_args() -> argparse.Namespace:
|
||||
parser = argparse.ArgumentParser(description="删除最近10条标题内容")
|
||||
parser.add_argument(
|
||||
"--input",
|
||||
default="source/output/reports/2_up_analysis_full_auto.md",
|
||||
help="输入报告路径",
|
||||
)
|
||||
parser.add_argument(
|
||||
"--output",
|
||||
help="输出报告路径(默认覆盖输入)",
|
||||
)
|
||||
return parser.parse_args()
|
||||
|
||||
def main():
|
||||
args = parse_args()
|
||||
input_file = args.input
|
||||
output_file = args.output or input_file
|
||||
|
||||
with open(input_file, 'r', encoding='utf-8') as f:
|
||||
content = f.read()
|
||||
|
||||
lines = content.split('\n')
|
||||
new_lines = []
|
||||
i = 0
|
||||
while i < len(lines):
|
||||
line = lines[i]
|
||||
new_lines.append(line)
|
||||
|
||||
if line.startswith('## '):
|
||||
i += 1
|
||||
while i < len(lines):
|
||||
curr = lines[i]
|
||||
if curr.startswith('## '):
|
||||
break
|
||||
if curr.startswith('### '):
|
||||
if '最近10条标题' in curr:
|
||||
i += 1
|
||||
while i < len(lines) and lines[i].startswith(' - '):
|
||||
i += 1
|
||||
continue
|
||||
else:
|
||||
break
|
||||
if curr.startswith('- ') and not curr.startswith(' - '):
|
||||
i += 1
|
||||
continue
|
||||
if curr.startswith(' - '):
|
||||
i += 1
|
||||
continue
|
||||
new_lines.append(curr)
|
||||
i += 1
|
||||
else:
|
||||
i += 1
|
||||
|
||||
result = '\n'.join(new_lines)
|
||||
result = re.sub(r'\n{3,}', '\n\n', result)
|
||||
|
||||
with open(output_file, 'w', encoding='utf-8') as f:
|
||||
f.write(result)
|
||||
|
||||
print(f'Done: {output_file}')
|
||||
return 0
|
||||
|
||||
if __name__ == "__main__":
|
||||
raise SystemExit(main())
|
||||
Reference in New Issue
Block a user