Extração de dados do arquivo JSON em Python [duplicado]

Nov 08 2020

Olá a todos! Preciso pegar todos os nomes em "streamers", mas realmente não sei como posso fazer isso. Talvez você possa me ajudar.

Obrigado!

Arquivo JSON:

    "streamers": [
        {},
        {
            "name": "One\n\n"
        },
        {
            "name": "Two\n\n"
        },
        {
            "name": "Three\n\n"
        }
    ]
}

Respostas

jojo_Berlin Nov 08 2020 at 01:51

ok, então basicamente o que você pode fazer:

import json

names=[]
with open('data.txt') as json_file:
  dict=json.load(json_file)["streamers"]
  for tuple in dict:
    if "name" in tuple:
      names.append(tuple["name"]
print(names)
 

MelvinAbraham Nov 08 2020 at 01:49

Você pode usar o loadmétodo do jsonmódulo. Esta função aceita um manipulador de arquivo, particularmente um arquivo JSON, então o converte em um objeto de dicionário Python que você pode usar imediatamente em seu código.

Você pode consultar o seguinte snippet:

import json

f = open('path/to/file/file.json')      # Open the JSON file
dictionary = json.load(f)               # Parse the JSON file
f.close()                               # Close the JSON file

streamers = dictionary['streamers']
print(streamers)

Resultado


[
    {},
    {
        "name": "One\n\n"
    },
    {
        "name": "Two\n\n"
    },
    {
        "name": "Three\n\n"
    }
]
Gabip Nov 08 2020 at 02:00

Experimentar:

import json

with open('path/to/file.json') as f:
    names = [x.get("name") for x in json.load(f)["streamers"] if x.get("name")]
    print(names)