ネットから取得した非常に単純な json 文字列を解析してみます: { "price" : '10.25'}
再生:
import simplejson as json
json_str = """ {"price" : '10.25'} """
json.loads(json_str)
結果:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/pymodules/python2.5/simplejson/__init__.py", line 307, in loads
return _default_decoder.decode(s)
File "/usr/lib/pymodules/python2.5/simplejson/decoder.py", line 335, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/pymodules/python2.5/simplejson/decoder.py", line 353, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
ただし、一重引用符を二重引用符に変更すると、動作します.\残念ながら、取得したjsonは上記の例ほど単純ではないため、すべての一重引用符を文字列置換コマンドで置き換えることはできません.
このjsonを解析する正しい方法を知っている人はいますか?
PS私はpython 2.5を使用しています。
どうもありがとう!