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

如何使用Python拆分提取JSON字符串中以竖线分隔的多条数据

问题解决方法

报错原因

你遇到的JSONDecodeError是因为输入内容不是标准单个JSON结构:包含换行分隔的多行内容,且第二行用竖线|拼接了两个JSON对象,无法直接用json.loads整体解析。

修改后可运行代码

import json

# 这里的credit_note就是你原始的输入字符串
a = credit_note
# 先按换行拆分每一行
for line in a.splitlines():
    # 每行再按竖线|拆分,得到单个合法JSON字符串
    for json_str in line.split('|'):
        # 过滤空内容,避免分隔符前后/行首尾有空白导致解析报错
        json_str = json_str.strip()
        if not json_str:
            continue
        # 逐个解析JSON
        data = json.loads(json_str)
        # 输出指定字段
        print(data["creditNoteId"], data["creditNoteUrl"])

运行输出结果

BSA11130181-S7 www.twitir.com
BSA11130181-S8 www.googol.com
BSA11130181-S9 www.fesbuuk.com

原代码问题说明

  • 没有拆分换行和竖线分隔的多个JSON片段,直接把混杂的整段内容传给json.loads触发格式错误
  • 原循环逻辑有误,遍历的时候调用了外层的y对象而不是遍历出来的单个元素,会重复打印同一个值

内容的提问来源于stack exchange,提问作者DM Equinox

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 17:24:04