【问题标题】:Extract JSON data from Javascript response using python使用python从Javascript响应中提取JSON数据
【发布时间】:2016-12-08 08:38:47
【问题描述】:

在抓取网站时,我收到了来自服务器的 javascript 代码作为响应。

document.write("<script src='/src/one/data.cached.js?ver=9153'></script>");
amorphic.setApplication('one');
amorphic.setSchema(
  {
    "Address": {"customer": 1},
    "Person": {"customer": 1},
    "Phone": {"customer": 1}
  }
);

那么,如何使用 python 从响应中提取这个 json 数据?

  {
    "Address": {"customer": 1},
    "Person": {"customer": 1},
    "Phone": {"customer": 1}
  }

【问题讨论】:

  • 您可以使用正则表达式删除不需要的文本并提取字典,或者必须有直接提取响应数据的选项
  • 您是否只是尝试在您的对象上调用 dict ?像这样dict(your_object)。另外,试试your_object['Address']
  • 您显示的内容看起来像 JSONP,而不是 JSON。这通常只从客户端代码完成,服务器代码可以请求普通 JSON。
  • @ettanany ,我正在获取包装在 javascript 对象中的 json 数据。我不认为我可以通过使用 your_object['Address'] 直接获取 json 数据。

标签: javascript python json extract


【解决方案1】:

最终使用正则表达式操作从响应中提取了所需的数据 - re package

似乎这是从 javascript 响应中提取 json 数据的唯一方法。

衷心感谢Prashant PuriBarmar 的快速和大力帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 2022-01-22
    • 1970-01-01
    • 2014-01-25
    • 1970-01-01
    • 2014-09-18
    • 1970-01-01
    相关资源
    最近更新 更多