Python调用Sellsy API报SyntaxError 欲获取2020年1月起客户列表
问题排查与修正方案
报错触发原因
当前的SyntaxError完全来自Python字典的语法书写错误,和API调用逻辑本身无关,具体错误点:
- Python字典中,键和值的分隔符必须使用冒号
:,代码里在定义'search'、'periodecreated_start'时误写为赋值运算符=,直接触发解析报错 - 给
periodecreated_start赋值时多余包裹了成对大括号,既不符合Python语法规范,也和Sellsy API要求的整数时间戳参数类型不匹配
修正后的可运行代码
try: infos = client.api(method='Client.getList', params={ 'search': { 'periodecreated_start': 1577836800 } }) except sellsy_api.SellsyAuthenticateError as e: print('Authentication failed ! Details : {}'.format(e)) except sellsy_api.SellsyError as e: print(e)
补充说明
- 时间戳1577836800本身就是2020年1月1日的Unix时间戳,不需要额外做类型转换或者包裹成集合/字典结构,直接作为整数赋值即可
- 语法报错消除后,如果后续出现接口返回错误,再根据API返回的报错信息调整参数结构即可,当前阶段不需要额外调整请求逻辑
内容的提问来源于stack exchange,提问作者Don Conrado
相关产品推荐
相关产品推荐

