用python代码将excel中的数据批量写入Json中的某个字段,生成新的Json文件

server/2025/3/17 15:23:23/

需求

需求:

1.将execl文件中的A列赋值给json中的TrackId,B列赋值给json中的OId
要求 execl的每一行,对应json中的每一个OId
json 如下:

python">{"List": [{"BatchNumber": "181-{{var}}",//  "BatchNumber": "181-17194575111","FlightNumber": "10214","AirlineCode": "CO","FlightDepartureAirport": "ADA","EstimatedExportTime":"2025-02-18 09:23:21","EstimatedArriveTime":"2024-05-19 09:23:21","FlightEntryAirport": "ADA","FileType":"pdf","AirWaybillFile": """BagDataList": [ {"BagNo": "PKG{{var}}6","OrderDatas": [{"OId": "BG-2401248300000001133","TrackId": "97222600001133"},{"OId": "BG-2401248300000001133","TrackId": "97222600001133"}]}]}]}]
}

2.execl 保存在 D:\PYTHON-学习\邮政接口压力测试脚本\pythonProject1\test_73553\IDS.xlsx 中
3.赋值完成后,输出新的json格式文件保存在项目JSON目录中

实现代码

python"># -*- coding: utf-8 -*-
import pandas as pd
import json
from pathlib import Path# 读取Excel文件(注意路径中的中文)
excel_path = r"D:\PYTHON-学习\邮政接口压力测试脚本\pythonProject1\test_73553\IDS.xlsx"
df = pd.read_excel(excel_path)# 构建JSON结构
template = {"List": [{"BatchNumber": "181-{{var}}","FlightNumber": "10214","AirlineCode": "CO","FlightDepartureAirport": "ADA","EstimatedExportTime": "2025-02-18 09:23:21","EstimatedArriveTime": "2024-05-19 09:23:21","FlightEntryAirport": "ADA","FileType": "pdf","AirWaybillFile": "","BagDataList": [{"BagNo": "PKG{{var}}6","OrderDatas": []}]}]
}# 填充OrderDatas
for _, row in df.iterrows():order_data = {"OId": row["原平台ID"],"TrackId": row["跟踪号"]}template["List"][0]["BagDataList"][0]["OrderDatas"].append(order_data)# 创建输出目录
output_dir = Path.cwd() / "JSON"
output_dir.mkdir(exist_ok=True)# 保存JSON文件(显式指定utf-8编码)
output_path = output_dir / "output.json"
with open(output_path, "w", encoding="utf-8") as f:json.dump(template, f, indent=4, ensure_ascii=False)print(f"JSON文件已生成至:{output_path}")

实现结果

在这里插入图片描述
在这里插入图片描述


http://www.ppmy.cn/server/175724.html

相关文章

使用爬虫获取自定义API操作API接口

1. 引言 在现代Web开发中,API(应用程序接口)是前后端通信的桥梁。通过API,前端可以从后端获取数据,进行各种操作。而爬虫是一种自动化工具,用于从网站上提取数据。本文将详细介绍如何使用爬虫获取自定义AP…

ADB报错:daemon not running...

ADB报错:daemon not running… 解决步骤: ADB【问题】程序报错:daemon not running; starting now at tcp:5037 【原因】5037端口被占用 【方法】找出5037端口占用的应用,关闭掉该应用进程 【解决方案】打开cmd命令窗口,首先找出占…

使用 `better-sqlite3` 与 `Express.js` 的最佳实践:是否需要关闭数据库连接?

在构建基于 Express.js 和 better-sqlite3 的应用时,管理数据库连接的生命周期是一个关键方面。虽然 better-sqlite3 在大多数情况下不需要显式关闭数据库连接,但在特定场景下,了解如何正确管理这些连接可以提高应用的性能和可靠性。本文将详…

[数据结构]排序之插入排序

1.基本思想: 直接插入排序是一种简单的插入排序法,其基本思想是:把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列 。 2直接插入排序&#xf…

腾讯混元大模型简介

腾讯混元大模型简介 1、大模型概述2、大模型、人工智能与机器学习3、腾讯混元大模型简介4、混元大模型训练及调优5、混元大模型训练数据 1、大模型概述 大模型(Large Models)通常是指参数规模庞大、计算能力强大的人工智能模型,尤其在自然语言…

13 指针高级

指针高级 指针做函数参数 学习函数的时候,讲了函数的参数都是值拷贝,在函数里面改变形参的值,实参并不会发生改变。 如果想要通过形参改变实参的值,就需要传入指针了。 注意:虽然指针能在函数里面改变实参的值&#…

【Agent】OpenManus 项目架构分析

这是我录制的一个视频,主要是描述我理解的 OpenManus 的思维逻辑,通过这个小的思维逻辑的复现,为后面要再分析其他 Agent 的实现做一个准备。 1. 项目概述 OpenManus 是一个基于大语言模型的智能体框架,旨在提供一个无需邀请码的…

【2025】基于python+django的慢性病健康管理系统(源码、万字文档、图文修改、调试答疑)

系统功能结构图如下 慢性病健康管理系统 课题背景 随着全球人口老龄化的加剧以及生活方式的改变,慢性病的发病率呈上升趋势,给个人健康和社会医疗资源带来了巨大压力。传统的慢性病管理模式存在信息不畅、患者参与度低、医疗资源分配不均等问题&#xf…