#!/usr/bin/env python3 # -*- coding: utf-8 -*- import json def extract_positions_from_json(): """从化工项目案例.json提取每个项目的适用岗位""" # 读取化工项目案例数据 with open('网页未导入数据/化工产业/化工项目案例.json', 'r', encoding='utf-8') as f: data = json.load(f) # 读取化工岗位简历数据获取等级映射 with open('网页未导入数据/化工产业/化工岗位简历.json', 'r', encoding='utf-8') as f: resume_data = json.load(f) position_levels = {} for item in resume_data: position = item.get('岗位名称', '').strip() level = item.get('岗位等级标签', '').strip() if position and level: position_levels[position] = level print('化工项目案例中的适用岗位(带等级):') print('=' * 80) project_positions = {} for i, project in enumerate(data, 1): name = project.get('案例名称', '') positions_str = project.get('适用岗位', '') # 将岗位字符串分割成列表 if positions_str: positions = [p.strip() for p in positions_str.replace(',', ',').split(',') if p.strip()] else: positions = [] # 为每个岗位添加等级 positions_with_level = [] for pos in positions: # 查找岗位等级 if pos in position_levels: level = position_levels[pos] else: # 根据岗位名称推测等级 if '工程师' in pos: level = '技术骨干岗' elif '技术员' in pos or '操作员' in pos or '实验员' in pos: level = '普通岗' elif '助理' in pos: level = '储备干部岗' else: level = '技术骨干岗' # 默认 positions_with_level.append({ 'position': pos, 'level': level }) project_positions[i] = { 'name': name, 'positions': positions_with_level } print(f'\n项目 {i}: {name}') print(f' 适用岗位 ({len(positions)}个):') for p in positions_with_level: print(f' - {p["position"]} [{p["level"]}]') return project_positions def save_positions_data(): """保存项目岗位数据供后续使用""" positions_data = extract_positions_from_json() with open('project_positions_from_json.json', 'w', encoding='utf-8') as f: json.dump(positions_data, f, ensure_ascii=False, indent=2) print(f'\n✅ 已保存项目岗位数据到 project_positions_from_json.json') return positions_data if __name__ == "__main__": save_positions_data()