如何将这样的字符串({u'facebook': {u'identifier': u'http://www.facebook.com/71'}})加载到 JSON

How can I load a string like this( {u'facebook': {u'identifier': u'http://www.facebook.com/71'}} ) into JSON

我从另一个 python 爬虫程序中得到这个字符串。

{u'facebook': {u'identifier': u'http://www.facebook.com/71'}} 

我读过最多关于 JSON 的问题。我知道问题是关于单引号的。但如何将其转换为双引号?

我试过json.dump(),但是它只加了一对字符串的双引号。

"{u'facebook': {u'identifier': u'http://www.facebook.com/71'}} "

我也试过用demjson,结果和上面一样。

其实我只需要"identifier"后面的字符串。我怎样才能得到它?提前致谢。

您的字符串 "{u'facebook': {u'identifier': u'http://www.facebook.com/71'}} " 看起来不像 JSON。首先它有单引号(正如您已经发现的那样),它还有 unicode 前缀:u.

该字符串实际上看起来像有效的 python,因此您可以使用 ast.literal_eval 函数将其解析为 dict

from ast import literal_eval

dictionary = literal_eval("{u'facebook': {u'identifier': u'http://www.facebook.com/71'}}"