Buscador de Caminho JSON
Ferramenta online gratuita para consultas JSONPath. Encontre, filtre e extraia dados de JSON usando expressões JSONPath. Ideal para testes de API.
Sobre o Buscador de Caminho JSON
O Buscador de Caminho JSON é uma ferramenta poderosa para consultar e extrair dados de documentos JSON usando expressões JSONPath. Similar ao XPath para XML, o JSONPath fornece uma linguagem de consulta para JSON que facilita navegar em estruturas aninhadas complexas, filtrar dados e extrair valores específicos. Perfeito para desenvolvedores trabalhando com APIs, analistas de dados explorando conjuntos de dados JSON e qualquer pessoa que precise consultar dados JSON eficientemente.
O que é JSONPath?
JSONPath é uma linguagem de consulta para JSON, similar ao XPath para XML. Ela fornece uma forma padronizada de navegar e extrair dados de estruturas JSON.
Recursos principais:
- Navegue objetos e arrays aninhados
- Filtre dados baseado em condições
- Extraia valores específicos ou objetos inteiros
- Suporte para curingas e busca recursiva
- Fatiamento e indexação de arrays
JSONPath usa uma sintaxe de notação de ponto (como $.store.book[0].title) para especificar caminhos através de dados JSON. É amplamente usado em:
- Testes e desenvolvimento de API
- Extração e transformação de dados
- Consulta de arquivos de configuração
- Análise de dados JSON
- Frameworks de testes automatizados
Quais são os operadores básicos do JSONPath?
JSONPath fornece vários operadores para navegar em JSON:
$ - Nó raiz (início de todo caminho)
@ - Nó atual (usado em filtros)
. - Operador filho (notação de ponto)
.. - Descida recursiva (busca em todos os níveis)
* - Curinga (todos os elementos)
[] - Subscrito de array ou filtro
Exemplos:
- $.store.book - Navegar para o array 'book'
- $.store.* - Todos os filhos de 'store'
- $..price - Todos os campos 'price' em qualquer nível
- $.store.book[0] - Primeiro livro
- $.store.book[*] - Todos os livros
- $.store.book[0:2] - Primeiros dois livros (fatia)
- $.store.book[?(@.price < 10)] - Livros abaixo de $10 (filtro)
Como funcionam os filtros?
Filtros usam sintaxe [?(...)] para selecionar elementos que correspondem a uma condição:
Operadores de comparação:
- == Igual a
- != Diferente de
- < Menor que
- <= Menor ou igual a
- > Maior que
- >= Maior ou igual a
Exemplos:
- $.store.book[?(@.price < 10)] - Livros mais baratos que $10
- $.store.book[?(@.category == 'ficção')] - Livros de ficção
- $.store.book[?(@.isbn)] - Livros que têm propriedade ISBN
- $.store.book[?(@.author == 'Herman Melville')] - Livros de autor específico
Operadores lógicos:
- && E
- || OU
Exemplo complexo:
$.store.book[?(@.price < 10 && @.category == 'ficção')]
Esto encontra livros de ficção abaixo de $10.
Posso consultar arrays?
Sim! JSONPath tem capacidades poderosas de consulta de arrays:
Indexação de array:
- [0] - Primeiro elemento (indexação baseada em 0)
- [2] - Terceiro elemento
- [-1] - Último elemento
Fatiamento de array:
- [0:3] - Elementos 0, 1, 2 (primeiros três)
- [2:5] - Elementos 2, 3, 4
- [:3] - Primeiros três elementos
- [2:] - Elementos do índice 2 até o fim
- [-2:] - Últimos dois elementos
Múltiplos índices:
- [0,2,4] - Elementos nos índices 0, 2 e 4
Curinga:
- [*] - Todos os elementos do array
Seleção filtrada:
- [?(@.price > 10)] - Elementos do array que correspondem à condição
Exemplos:
- $.users[0] - Primeiro usuário
- $.users[-1] - Último usuário
- $.users[0:5] - Primeiros 5 usuários
- $.users[*].name - Todos os nomes de usuários
Como busco chaves em qualquer nível?
Use o operador de descida recursiva (..) para buscar em todos os níveis:
Sintaxe: $..<chave>
Exemplos:
- $..author - Encontre todos os campos 'author' em qualquer lugar no JSON
- $..price - Encontre todos os campos 'price' em qualquer profundidade
- $..book[*] - Encontre todos os arrays 'book' em qualquer lugar
- $..* - Todos os valores em qualquer nível
Isto é útil quando:
- Você não sabe o caminho exato para um campo
- O mesmo campo aparece em múltiplos níveis
- Você quer extrair todas as instâncias de um campo
- Trabalhando com JSON profundamente aninhado
Nota: Busca recursiva pode retornar muitos resultados e pode ser mais lenta em documentos JSON muito grandes. Use caminhos mais específicos quando possível para melhor desempenho.
Posso extrair múltiplas propriedades?
Sim! Existem várias formas de extrair múltiplas propriedades:
Método 1: Múltiplas consultas
Execute consultas separadas:
- $.store.book[*].title
- $.store.book[*].author
Método 2: Notação de array
$.store.book[*]['title','author']
Extrai tanto título quanto autor de todos os livros.
Método 3: Curinga
$.store.book[0].*
Extrai todas as propriedades do primeiro livro.
Método 4: Seleção de pai
$.store.book[*]
Retorna objetos de livros completos (com todas as propriedades).
A ferramenta exibe resultados em formato JSON, para que você possa ver todos os dados extraídos claramente.
Dica: Se você precisa de propriedades específicas de resultados filtrados:
$.store.book[?(@.price < 10)]
Isto retorna objetos de livros completos que correspondem ao filtro, incluindo todas as suas propriedades.
Quais são casos de uso comuns?
O Buscador de Caminho JSON é útil para muitos cenários:
Desenvolvimento de API:
- Testar respostas de API
- Extrair campos específicos de grandes respostas JSON
- Verificar estrutura e valores de dados
- Depurar integrações de API
Análise de Dados:
- Explorar conjuntos de dados JSON complexos
- Encontrar todas as instâncias de um campo
- Filtrar dados baseado em critérios
- Extrair valores aninhados para análise
Transformação de Dados:
- Selecionar dados para processos ETL
- Mapear campos JSON para outros formatos
- Extrair subconjuntos de dados
- Preparar dados para importação em banco de dados
Testes:
- Validar estrutura JSON em testes automatizados
- Extrair valores para asserções
- Consultar fixtures de teste
- Verificar conformidade com contrato de API
Configuração:
- Consultar arquivos de configuração de aplicação
- Extrair valores específicos de ambiente
- Validar estrutura de configuração
- Encontrar configurações específicas em grandes configs
Meus dados estão seguros?
Sim, seus dados estão completamente seguros e privados:
- Todo o processamento acontece no seu navegador (lado do cliente)
- Nenhum dado JSON é enviado para qualquer servidor
- Nenhum dado é armazenado, registrado ou transmitido
- Funciona completamente offline após o carregamento da página
- Sem cookies ou rastreamento para seus dados JSON
Você pode verificar isto:
- Checando a aba de rede do navegador (sem requisições com seus dados)
- Desconectando da internet após a página carregar (ferramenta ainda funciona)
- Revisando o código-fonte aberto
Seguro para usar com:
- Respostas de API (mesmo com dados sensíveis)
- Arquivos de configuração
- Dados de clientes
- Registros financeiros
- Informações pessoais (PII)
- Dados proprietários de negócios
Nota: Sempre siga as políticas de tratamento de dados da sua organização. Embora a ferramenta seja segura, evite colar dados altamente sensíveis (como senhas, chaves de API ou tokens) em qualquer ferramenta online sem a devida autorização.