#!/usr/bin/env python3 # -*- coding: utf-8 -*- import json import re import datetime import shutil def clean_interview_questions(): """ 清理面试题数据,删除difficulty和tags字段 """ mock_file = "src/mocks/resumeInterviewMock.js" # 备份文件 backup_path = f"{mock_file}.backup_{datetime.datetime.now().strftime('%Y%m%d_%H%M%S')}" shutil.copy(mock_file, backup_path) print(f"✅ 已备份文件到:{backup_path}") # 读取文件内容 with open(mock_file, 'r', encoding='utf-8') as f: content = f.read() # 使用正则表达式删除difficulty和tags字段 # 删除difficulty行 content = re.sub(r',?\s*"difficulty":\s*"[^"]*"', '', content) # 删除tags字段(包括数组内容) content = re.sub(r',?\s*"tags":\s*\[[^\]]*\]', '', content) # 清理多余的逗号(如果answer后面有逗号但后面没有其他字段) content = re.sub(r'("answer":\s*"[^"]*"),\s*\n\s*}', r'\1\n }', content) # 清理多余的空行 content = re.sub(r'\n\s*\n\s*\n', '\n', content) # 写回文件 with open(mock_file, 'w', encoding='utf-8') as f: f.write(content) print("✅ 成功清理面试题数据") # 验证清理结果 with open(mock_file, 'r', encoding='utf-8') as f: check_content = f.read() difficulty_count = len(re.findall(r'"difficulty"', check_content)) tags_count = len(re.findall(r'"tags"', check_content)) if difficulty_count == 0 and tags_count == 0: print("✅ 验证成功:已完全删除difficulty和tags字段") else: print(f"⚠️ 仍有残留:difficulty出现{difficulty_count}次,tags出现{tags_count}次") if __name__ == "__main__": clean_interview_questions()