如何将原始的javascript对象转换成字典?
在抓屏时,我会从<script>
标签中提取数据。
我得到的数据不是标准的JSON
格式。我无法使用json.loads()
。
# from
js_obj = '{x:1, y:2, z:3}'
# to
py_obj = {'x':1, 'y':2, 'z':3}
目前我使用regex
将原始数据转换为JSON
格式。
但当我遇到复杂的数据结构时,我感觉很糟糕。
您有更好的解决方案吗?
解决方案
demjson.decode()
import demjson
# from
js_obj = '{x:1, y:2, z:3}'
# to
py_obj = demjson.decode(js_obj)
jsonnet.evaluate_snippet()
import json, _jsonnet
# from
js_obj = '{x:1, y:2, z:3}'
# to
py_obj = json.loads(_jsonnet.evaluate_snippet('snippet', js_obj))
ast.literal_eval()
import ast
# from
js_obj = "{'x':1, 'y':2, 'z':3}"
# to
py_obj = ast.literal_eval(js_obj)
相关文章