Python 使用 openpyxl 更新 Excel 发货状态 - 使用 Deppon API 查询
使用 Python 更新 Excel 发货状态 - 使用 Deppon API 查询
本文将提供一个 Python 代码示例,使用 openpyxl 库读取 Excel 发货记录表,并利用 Deppon API 查询物流信息,将查询结果更新到 Excel 表格中。
代码示例
import requests
import openpyxl
def query_deppon():
# 替换为实际的工作簿路径和工作表名称
workbook_path = 'your_workbook_path.xlsx'
sheet_name = '发货记录表'
# 打开工作簿
workbook = openpyxl.load_workbook(workbook_path)
# 获取指定工作表
sheet = workbook[sheet_name]
# 假设单号在第K列,结果在第L列
tracking_column = 11 # 第11列,索引从0开始
status_column = 12 # 第12列,索引从0开始
# 遍历行
for row in sheet.iter_rows(min_row=2):
tracking_number = row[tracking_column].value
if tracking_number:
# 构建查询URL
query_url = f'https://api.deppon.com/openapi/business/trans/getTransInfo?trackingNo={tracking_number}&appId=sj133126259351&appKey=147369213.yY'
# 发送GET请求
response = requests.get(query_url)
if response.status_code == 200:
result = response.json()
# 解析查询结果,提取需要的信息
status = result['data']['status']
# 更新查询结果
row[status_column].value = status
# 保存工作簿
workbook.save(workbook_path)
# 调用查询函数
query_deppon()
代码说明
- 首先导入
requests和openpyxl库,分别用于发送 HTTP 请求和操作 Excel 文件。 - 定义
query_deppon()函数,负责查询物流信息并更新 Excel 表格。 - 在函数中,首先设置工作簿路径和工作表名称,并打开工作簿。
- 确定单号和结果所在列的索引(从 0 开始),用于遍历行并获取对应信息。
- 遍历工作表中的每一行,获取单号并构建查询 URL,发送 GET 请求获取物流信息。
- 解析查询结果,提取需要的信息,并更新对应行的结果单元格。
- 最后保存更新后的工作簿。
注意事项
- 确保你已经安装了
requests和openpyxl库,可以使用pip install requests openpyxl命令安装。 - 替换代码中的
workbook_path和sheet_name变量值为你的实际工作簿路径和工作表名称。 - 确保你拥有 Deppon API 的授权,并使用正确的
appId和appKey。 - 调整代码中单号和结果所在列的索引,以匹配你的实际情况。
希望本文对你有所帮助!如果你有任何进一步的问题,请随时提问。
原文地址: https://www.cveoy.top/t/topic/C2x 著作权归作者所有。请勿转载和采集!