【问题标题】:How to get rid of 'Json file Import Error' in Python while using request.data?如何在使用 request.data 时摆脱 Python 中的“Json 文件导入错误”?
【发布时间】:2018-02-13 01:28:45
【问题描述】:

Json 文件导入错误 Python:我正在使用 request.data 请求 json 文件但收到以下错误:

额外数据:第 1 行第 13 列 - 第 12 行第 2 列(字符 12 - 1388)

我的 Json 文件如下所示:

"items":  
[{"ItemId":"1","EntityCode": "A", "Title": "abc","date":"2017-09-01"},   
{"ItemId":"2","EntityCode": "A", "Title": "cba","date":"2017-09-01"},  
{"ItemId":"3","EntityCode": "A", "Title": "bcd","date":"2017-09-01"}]

这是我的输入,我将在以下代码中作为数据获得: data=request.data

我也使用https://jsonlint.com/ 来验证这个 json 但它说

错误:第 1 行解析错误:“items”:

此数据来自 java 应用程序,我该如何解决?如有更多疑问,请随时回复。

【问题讨论】:

    标签: python json python-2.7 pandas


    【解决方案1】:

    你应该试试

    {"items":  
    [{"ItemId":"1","EntityCode": "A", "Title": "abc","date":"2017-09-01"},   
    {"ItemId":"2","EntityCode": "A", "Title": "cba","date":"2017-09-01"},  
    {"ItemId":"3","EntityCode": "A", "Title": "bcd","date":"2017-09-01"}]}
    

    没有括号它不是一个有效的json。

    您是否尝试过 request.json 而不是 request.data ?如果您无法更正 json 文件,您也可以尝试 data = "{{{0}}}".format(request.data)

    【讨论】:

      【解决方案2】:

      有效的 JSON 将以花括号开头,因此您的 data=request.data 应该返回

      {
      "items": [{
              "ItemId": "1",
              "EntityCode": "A",
              "Title": "abc",
              "date": "2017-09-01"
          },
          {
              "ItemId": "2",
              "EntityCode": "A",
              "Title": "cba",
              "date": "2017-09-01"
          },
          {
              "ItemId": "3",
              "EntityCode": "A",
              "Title": "bcd",
              "date": "2017-09-01"
          }
      ]
      }
      

      从您在 OP 中提到的网站验证。在 JSONLint 网站上试试上面的 JSON。

      【讨论】:

      • 有没有办法在我请求数据后把它放上去。我可以在 python 中进行此更正吗?
      • 是的,你可以简单地把它变成一本字典。如果你只想要“项目”,那么你可以像 items = {'items':request.data['items']} 那样做,但 request.data 不是已经给你字典了,或者,如果你想要来自客户端的 JSON 数据,那么你可以简单地调用 @987654325 @ 而不是 request.data 然后获取您的项目,就像您使用普通字典一样
      猜你喜欢
      • 1970-01-01
      • 2021-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-14
      • 1970-01-01
      • 1970-01-01
      • 2019-08-06
      相关资源
      最近更新 更多