You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Python脚本实现Pa_ID从指定Excel单元格读取并对应输出数据

解决方案

直接修改脚本,通过单元格对应关系列表批量处理指定位置的Pa_ID读取和数据写入,同时修正原脚本里的语法错误,完整代码如下:

import gopalamemo
import datetime
import pandas as pd 
import xlwings as xw

# 修正语法:用等号赋值账号密码
username = ""
password = ""

wb = xw.Book(r'D:\PA DATA\DATA.xlsx')  # 路径加r避免转义字符问题
sheet = wb.sheets[0]

# 定义输入(Pa_ID所在单元格)和输出(数据写入起始单元格)的对应关系
cell_pairs = [
    ("A1", "A2"),
    ("F1", "F2"),
    ("K1", "K2"),
    ("Q1", "Q2")
]

# 修正日期格式:用datetime对象或者符合接口要求的字符串,这里用datetime示例
from_date = datetime.date(2020, 1, 1)
to_date = datetime.date(2024, 1, 1)
waiting_time = "15min"

# 循环处理每一组单元格
for input_cell, output_cell in cell_pairs:
    # 读取Pa_ID,注意转成整数(如果接口要求整数类型)
    pa_id = sheet.range(input_cell).value
    if pa_id is None:
        print(f"{input_cell}单元格为空,跳过处理")
        continue
    
    # 确保Pa_ID是整数类型,避免接口报错
    try:
        pa_id = int(pa_id)
    except ValueError:
        print(f"{input_cell}的内容不是有效数字,跳过处理")
        continue
    
    # 调用接口获取数据并写入Excel
    pa_data_his = pd.DataFrame(gopalamemo.pa_data(pa_id, from_date, to_date, waiting_time))
    sheet.range(output_cell).value = pa_data_his

# 可选:保存工作簿
wb.save()

关键改动说明

  • 单元格对应关系列表:把需要处理的输入输出单元格配对存进列表,通过循环批量处理,避免重复写相同逻辑
  • 修正语法错误:原脚本里username : ""是错误语法,改成username = "";Excel路径加r前缀避免反斜杠转义问题
  • 日期格式修正:原脚本1-1-2020会被Python解析成整数运算(1减1减2020等于-2020),改成datetime.date对象或者接口要求的字符串格式,确保接口能正确识别日期
  • 异常处理:增加了单元格为空、内容非数字的判断,避免脚本中途崩溃
  • 批量循环:通过for循环遍历每一组单元格,自动完成读取Pa_ID、获取数据、写入对应位置的流程

内容的提问来源于stack exchange,提问作者Parveen Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 06:01:01