#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ 将土木水利产业的岗位数据(带企业图片)合并到companyJobsData.json """ import json import os # 文件路径 COMPANY_JOBS_DATA_PATH = "src/mocks/companyJobsData.json" CIVIL_JOBS_PATH = "网页未导入数据/土木水利产业/土木水利内推岗位.json" COMPANY_IMAGES_DATA_PATH = "网页未导入数据/土木水利产业/土木水利_内推岗位企业图片.json" def main(): # 读取企业图片数据 with open(COMPANY_IMAGES_DATA_PATH, 'r', encoding='utf-8') as f: company_images_data = json.load(f) # 创建岗位名称到图片URL的映射 image_map = {} for item in company_images_data: position_name = item.get("内推岗位名称") image_urls = item.get("BOSS照片链接", "") if position_name and image_urls: image_map[position_name] = image_urls print(f"✓ 读取到 {len(image_map)} 个岗位的企业图片数据") # 读取土木水利岗位数据 with open(CIVIL_JOBS_PATH, 'r', encoding='utf-8') as f: civil_jobs_data = json.load(f) print(f"✓ 读取到 {len(civil_jobs_data)} 个土木水利岗位") # 为土木水利岗位添加企业图片字段 updated_count = 0 for job in civil_jobs_data: position_name = job.get("内推岗位名称") if position_name and position_name in image_map: job["BOSS照片链接"] = image_map[position_name] updated_count += 1 print(f" ✓ {position_name} - 已添加企业图片") print(f"\n✓ 为 {updated_count}/{len(civil_jobs_data)} 个土木水利岗位添加了企业图片") # 读取现有的岗位数据 with open(COMPANY_JOBS_DATA_PATH, 'r', encoding='utf-8') as f: existing_jobs_data = json.load(f) print(f"✓ 当前文件中有 {len(existing_jobs_data)} 个岗位") # 合并数据(添加土木水利岗位到现有数据) merged_data = existing_jobs_data + civil_jobs_data print(f"✓ 合并后共 {len(merged_data)} 个岗位") # 写回文件 with open(COMPANY_JOBS_DATA_PATH, 'w', encoding='utf-8') as f: json.dump(merged_data, f, ensure_ascii=False, indent=2) print(f"\n✅ 数据已成功写入: {COMPANY_JOBS_DATA_PATH}") print(f" - 文旅产业岗位: {len(existing_jobs_data)} 个") print(f" - 土木水利产业岗位: {len(civil_jobs_data)} 个") print(f" - 其中带企业图片: {updated_count} 个") if __name__ == "__main__": main()