J'essaie d'analyser les données de réponse json à partir de l'API YouTube, mais je reçois toujours une erreur.
Voici l'extrait de code où il s'étouffe:
data = json.loads("""{ "entry":{ "etag":"W/\"A0UGRK47eCp7I9B9WiRrYU0.\"" } }""")
..et cela se produit:
JSONDecodeError: Expecting , delimiter: line 1 column 23 (char 23)
J'ai confirmé qu'il est valide json et je n'ai aucun contrôle sur sa mise en forme, alors comment puis-je surmonter cette erreur?
Vous aurez besoin d'un r
avant "" ", ou remplacez tous les \
Par \\
. Ce n'est pas quelque chose dont vous devriez vous soucier lorsque vous lisez le json ailleurs, mais quelque chose dans la chaîne elle-même.
data = json.loads(r"""{ "entry":{ "etag":"W/\"A0UGRK47eCp7I9B9WiRrYU0.\"" } }""")
voir ici pour plus d'informations
Vous devez ajouter r
avant votre chaîne json.
>>> st = r'{ "entry":{ "etag":"W/\"A0UGRK47eCp7I9B9WiRrYU0.\"" } }'
>>> data = json.loads(st)
>>>