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

使用Smartsheet Python SDK添加多列行至目标表遇错误求助

解决Smartsheet添加多列行时的两个问题

一、AttributeError: Retry类无DEFAULT_METHOD_WHITELIST属性

这个错误是因为你安装的requests库版本太新,而旧版smartsheet-python-sdk仍在使用已被废弃的Retry.DEFAULT_METHOD_WHITELIST属性——新版本requests里该属性已改名为allowed_methods。

解决方法:

  • 降级requests到兼容版本,执行命令:
    pip install requests==2.26.0
    
  • 若不想降级,可手动修改smartsheet库的session.py文件(路径为报错信息里的/home/mtuccillo/.local/lib/python3.8/site-packages/smartsheet/session.py),将第53行的Retry.DEFAULT_METHOD_WHITELIST替换为Retry.allowed_methods。

二、多列单元格添加的语法错误

你的代码在row_a.cells.append()中传入的字典存在重复的column_id和value键,Python会自动覆盖重复键,导致仅最后一组键值对生效;正确逻辑是每个单元格对应一个独立字典,需分别添加或批量传入。

修正后的单元格添加代码:

row_a = smartsheet.models.Row()
row_a.to_top = True
# 方式1:逐个添加单元格
row_a.cells.append({
   'column_id': hub_site_name_col,
   'value': "YYUUNN"
})
row_a.cells.append({
   'column_id': hub_site_clli_col,
   'value': "CCIILL123"
})

# 方式2:批量添加单元格(二选一即可)
# row_a.cells.extend([
#    {'column_id': hub_site_name_col, 'value': "YYUUNN"},
#    {'column_id': hub_site_clli_col, 'value': "CCIILL123"}
# ])

另外,代码中重复创建了smartsheet_client实例,会导致之前传入的access_token被覆盖丢失,需删除重复的无参实例创建代码:

# 删除此行无效代码
# smartsheet_client = smartsheet.Smartsheet()

完整修正后的代码

import smartsheet

# 替换为你的实际Smartsheet令牌
access_token = "你的access_token"
smartsheet_client = smartsheet.Smartsheet(access_token)

hub_site_clli_col = 1088486425710468
hub_site_name_col = 5592086053080964

# 开启错误抛出,便于排查问题
smartsheet_client.errors_as_exceptions(True)   

# 若需要读取源表数据,可保留此行;否则可注释
# sheet = smartsheet_client.Sheets.get_sheet(4812284098465668)
    
row_a = smartsheet.models.Row()
row_a.to_top = True
# 添加两个单元格数据
row_a.cells.append({
   'column_id': hub_site_name_col,
   'value': "YYUUNN"
})
row_a.cells.append({
   'column_id': hub_site_clli_col,
   'value': "CCIILL123"
})

response = smartsheet_client.Sheets.add_rows(
  4812284098465668,       # 目标表的sheet_id
  [row_a])

# 可选:打印响应结果确认操作是否成功
print(response)

内容的提问来源于stack exchange,提问作者Mike Tucci

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 18:12:34