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

Python:如何将URL编码的bytes类型数据转换为JSON

将Bytes类型的URL编码数据转换为JSON格式

你可以通过以下三步完成转换,Python代码示例如下:

  1. 解码Bytes数据为字符串
    首先把bytes类型的数据解码成普通字符串,这里用UTF-8编码即可:

    byte_data = b'ToCountry=US&ToState=WA&SmsMessageSid=SM2c04173b9a5f684be8019e177978c791&NumMedia=0&ToCity=&FromZip=&SmsSid=SM2c04173b9a5f684be8019e177978c791&FromState=&SmsStatus=received&FromCity=&Body=Bbjhggggggg&FromCountry=EE&To=%2B15095121752&ToZip=&NumSegments=1&ReferralNumMedia=0&MessageSid=SM2c04173b9a5f684be8019e177978c791&AccountSid=ACee01b40141d9e1237769375c269f4a76&From=%2B37253055607&ApiVersion=2010-04-01'
    str_data = byte_data.decode('utf-8')
    
  2. 解析URL编码的键值对为字典
    使用urllib.parse.parse_qs解析URL编码的字符串,这个方法返回的字典中每个值都是列表(适配同键多值场景),我们可以把单个值的列表转为对应的值:

    from urllib.parse import parse_qs
    
    parsed_data = parse_qs(str_data)
    # 处理成单个值的字典
    normalized_data = {key: value[0] for key, value in parsed_data.items()}
    
  3. 将字典转换为JSON字符串
    最后用json.dumps把字典转成格式化后的JSON格式:

    import json
    
    json_data = json.dumps(normalized_data, indent=4)
    print(json_data)
    

执行以上代码后,你会得到如下JSON输出:

{
    "ToCountry": "US",
    "ToState": "WA",
    "SmsMessageSid": "SM2c04173b9a5f684be8019e177978c791",
    "NumMedia": "0",
    "ToCity": "",
    "FromZip": "",
    "SmsSid": "SM2c04173b9a5f684be8019e177978c791",
    "FromState": "",
    "SmsStatus": "received",
    "FromCity": "",
    "Body": "Bbjhggggggg",
    "FromCountry": "EE",
    "To": "+15095121752",
    "ToZip": "",
    "NumSegments": "1",
    "ReferralNumMedia": "0",
    "MessageSid": "SM2c04173b9a5f684be8019e177978c791",
    "AccountSid": "ACee01b40141d9e1237769375c269f4a76",
    "From": "+37253055607",
    "ApiVersion": "2010-04-01"
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 01:10:18