Consultar documentos JSON com jq

Se estiver trabalhando com JSON, você deve conhecer o problema: o documento JSON está reduzido e você está interessado apenas em algumas partes do documento. Tome as revisões da página principal da Wikipedia como exemplo: Usando a API Mediawiki , essa informação está rapidamente disponível, mas o documento é um tanto confuso.

jq pode ajudá-lo com os dois problemas: Imprime bem o documento e ajuda a extrair apenas as informações necessárias. Para instalar o jq, você pode usar brew install jqno OSX e existem binários para Linux .

Alguns truques para começar a usar jq:

Imprima bem o documento

curl -s 'http://en.wikipedia.org/w/api.php'                      
-d 'format=json' -d 'action=query' -d 'titles=Main%20Page'
-d 'prop=revisions' -d 'rvlimit=10'
| jq '.'

Dê uma olhada nas chaves de nível superior

curl -s 'http://en.wikipedia.org/w/api.php'                      
-d 'format=json' -d 'action=query' -d 'titles=Main%20Page'
-d 'prop=revisions' -d 'rvlimit=10'
| jq '. | keys'

Extraia comentário e carimbo de data / hora de cada revisão

curl -s 'http://en.wikipedia.org/w/api.php'                      
-d 'format=json' -d 'action=query' -d 'titles=Main%20Page'
-d 'prop=revisions' -d 'rvlimit=10'
| jq '.query.pages["15580374"].revisions[] | {comment, timestamp}'

Há um excelente tutorial e um ótimo manual para você ler.

Feliz jq-ing!