使用python处理json中的转义url字符串

使用python处理json中的转义url字符串,python,json,parsing,escaping,url-parsing,Python,Json,Parsing,Escaping,Url Parsing,我正在访问一个返回json的服务,如下所示: { "A":"A value", "B":{ "B1":"B1 value", "B2":"B2 value" }, "C":{ "c_url":"http:\/\/someurl:someport\/somefolder\/somefile", } } 我要做的是解析这个json,并获得url和键值对中文件夹的somefile部分 因此,本质上,在我的脚本处理完json之后,

我正在访问一个返回json的服务,如下所示:

{
"A":"A value",
"B":{
      "B1":"B1 value",
      "B2":"B2 value"
    },
"C":{
               "c_url":"http:\/\/someurl:someport\/somefolder\/somefile",

    }
}
我要做的是解析这个json,并获得url和键值对中文件夹的somefile部分

因此,本质上,在我的脚本处理完json之后,它将以某种分隔方式在一个文件中输出url和somefile

文件处理上述提供的json后的输出为:

url: http://someurl:someport/somefolder/somefile
file: somefile
我很确定python中有很多json解析器可以解析json,但是我该如何处理用转义字符预处理过的url字符串呢?我是否需要编写自己的url编码器,从url字符串中去掉转义字符

此外,我需要标记url的各个组件以访问“文件”部分,是否有任何库可以提供帮助

谢谢

所以,按照

simplejson
应该能够处理这个“错误”转义算法。考虑:

#!/usr/bin/env python
import simplejson

print simplejson.loads('"http:\/\/someurl:someport\/somefolder\/somefile"')
请注意,
simplejson
不是标准软件包,但可以通过
easy\u install
安装

样本输出:

[85][23:35:24] vlazarenko@alluminium (~/tests) > python unescape.py 
http://someurl:someport/somefolder/somefile

您的示例JSON不需要在“c_url”k-v对后加逗号

>>> import json
>>> st = '{"A":"A value","B":{ "B1":"B1 value", "B2":"B2 value" },"C":{ "c
_url":"http:\/\/someurl:someport\/somefolder\/somefile" }}'
>>> json.loads(st)
{u'A': u'A value', u'C': {u'c_url': u'http://someurl:someport/somefolder/somefile'}, u'B': {u'B1': u
'B1 value', u'B2': u'B2 value'}}
要仅获取URL的“somefile”部分,请执行以下操作:

url.split('/')[url.count('/')]

像这样的东西会有帮助吗?似乎那个特别的东西没有帮助,但我偶然发现了其他的东西。