0
votes

Impossible de lire et de charger le fichier JSON en Python, le format JSON est différent

J'ai le JSON au format ci-dessous, je ne peux pas lire et charger le fichier JSON.Ettant une erreur de données supplémentaire. S'il vous plaît aider

raise JSONDecodeError("Extra data", s, end)
JSONDecodeError: Extra data


3 commentaires

Ce que vous montrez n'est pas valide JSON


Ce sont des bouchons d'objets JSON, chacun valide JSON elle-même. Vous en avez probablement besoin dans un tableau JSON, séparé par une virgule


DATA [340: 360] ===> ', "Texte": ""} \ n {"" " ... Le format des données n'est pas correct. Il devrait y avoir une virgule séparer les dictionnaires.


3 Réponses :


0
votes

Si vous mettez les objets JSON dans un tableau et séparez correctement les objets avec des virgules:

[
{"From":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"e203b3e0-0b89- 11ea-b608-f5b0a8eb5137",
      "name":"Bot","aadObjectId":null,
      "role":"bot"},
  "To":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"deb09575-8edb-411f-b875-418e7944a315",
      "name":"User",
      "aadObjectId":null,
      "role":"user"},
  "Text":""},
{"From":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"e203b3e0-0b89-11ea-b608-f5b0a8eb5137",
      "name":"Bot",
      "aadObjectId":null,
      "role":"bot"},
  "To":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"a23f6775-c557-489d-996a-d6d3b329a234",
      "name":"User",
      "aadObjectId":null,
      "role":"user"},
  "Text":"Let me know if there’s anything else you need."},
{"From":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"e203b3e0-0b89-11ea-b608-f5b0a8eb5137",
      "name":"Bot",
      "aadObjectId":null,
      "role":"bot"},
  "To":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"a9f3d513-e4d2-48dc-996a-df3c292e707c",
      "name":"User",
      "aadObjectId":null,
      "role":"user"},
  "Text":"I’m here if you need anything else."},
{"From":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"e203b3e0-0b89-11ea-b608-f5b0a8eb5137",
      "name":"Bot",
      "aadObjectId":null,
      "role":"bot"},
  "To":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"b08c1237-82cb-4550-8b19-cef5a8e87439",
      "name":"User",
      "aadObjectId":null,
      "role":"user"},
  "Text":""},
{"From":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"e203b3e0-0b89-11ea-b608-f5b0a8eb5137",
      "name":"Bot",
      "aadObjectId":null,
      "role":"bot"},
  "To":
    {"$type":"Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema",
      "id":"7eb76928-1a0e-4e31-80b2-519be0315d56",
      "name":"User",
      "aadObjectId":null,
      "role":"user"},
  "Text":""}
]


0 commentaires

0
votes

Ceci est un JSON valide:

   ...
   ##Read the JSON file
   with open('C:/Users/abc/Desktop/xyz/pqr/aaa/Data5.json',encoding= "utf-8") as f:
       data = []            # initialize an empty list
       for line in f:
           line += next(f)  # concatenate every second line
           data.append(json.loads(line))


0 commentaires

0
votes

Voir si cela produit les données dont vous avez besoin. XXX PRE>

Il suffit de faire cuire les données un peu. En supposant qu'il s'agisse d'une caténation de plusieurs paquets JSON, nous pouvons les séparer d'une syntaxe appropriée et de le faire dans une liste compatible JSON avec des accolades carrées. P>

>>> json_data[2]['From']['$type']
'Microsoft.Bot.Schema.ChannelAccount, Microsoft.Bot.Schema'


2 commentaires

Sa jeûne toujours l'erreur, relance JSondecodeError ("Attending Value", S, Err.Value) de Aucun JSONDecODEError: Attente de valeur


Fixez-le alors @sanjanajha, vous savez de déboguer correctement?