#!/usr/bin/env python3 # -*- coding: utf-8 -*- import json import datetime import shutil def fix_pack_test_engineer(): """修复电池pack测试工程师的修改版简历""" 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("网页未导入数据/能源产业/能源修改版简历/电池PACK测试工程师.md", 'r', encoding='utf-8') as f: resume_content = f.read() # 读取mock文件 with open(mock_file, 'r', encoding='utf-8') as f: content = f.read() # 转义内容用于JSON escaped_content = json.dumps(resume_content, ensure_ascii=False) # 查找并替换(注意是小写的pack) import re pattern = r'("position":\s*"电池pack测试工程师"[^{]*?"content":\s*{[^}]*?"original":[^,]*?,)(\s*"modified":\s*)"[^"]*"' # 执行替换 new_content, count = re.subn( pattern, rf'\1\2{escaped_content}', content ) if count > 0: with open(mock_file, 'w', encoding='utf-8') as f: f.write(new_content) print("✅ 成功更新 电池pack测试工程师 的修改版简历") else: # 尝试添加modified字段 pattern2 = r'("position":\s*"电池pack测试工程师"[^{]*?"content":\s*{[^}]*?"original":[^}]*?)(})' replacement = rf'\1,\n "modified": {escaped_content}\2' new_content, count = re.subn(pattern2, replacement, content) if count > 0: with open(mock_file, 'w', encoding='utf-8') as f: f.write(new_content) print("✅ 成功添加 电池pack测试工程师 的modified字段") else: print("❌ 未找到 电池pack测试工程师") # 验证 with open(mock_file, 'r', encoding='utf-8') as f: content = f.read() if '"position": "电池pack测试工程师"' in content and '"modified":' in content: # 进一步验证modified字段是否在该岗位的content中 idx = content.find('"position": "电池pack测试工程师"') section = content[idx:idx+3000] if '"modified":' in section and "电池PACK测试" in section: print("✅ 验证成功:电池pack测试工程师已包含修改版简历") if __name__ == "__main__": fix_pack_test_engineer()