Cepesp-Fgv / tse-dados

Esse projeto tem como objetivo visualizar e avaliar os dados de votação do Tse
30 stars 9 forks source link

Pesquisa por resultado de eleição (consolidado) não retorna resultados com votos BRANCO e NULOS (API REST). #104

Closed rcarocha closed 5 years ago

rcarocha commented 6 years ago

Uma pesquisa por resultado de eleição, com consolidação de eleição não retorna dados sobre votos brancos e nulos. Na consulta abaixo, tentou-se obter o resultado indicando explicitamente as colunas, sem qualquer sucesso, com a indicação de agregação política como "Consolidado da Eleição".

curl -i -g -X GET "http://cepesp.io/api/consulta/tse?cargo=6&agregacao_regional=2&agregacao_politica=4&ano=2014&selected_columns[]=QT_VOTOS_BRANCOS&selected_columns[]=QT_VOTOS_NULOS"

não retorna nada (na verdade retorna a mensagem "No group keys passed!" na resposta HTTP, sendo que o código HTTP é 200).

Entretanto, a consulta a seguir, sem indicação das colunas, retorna resultados mas sem as referidas informações.

curl -i -g -X GET "http://cepesp.io/api/consulta/tse?cargo=6&agregacao_regional=2&agregacao_politica=4&ano=2014"

Observe que a indicação API REST na issue não necessariamente restringue o problema à API REST.

lins-morandi commented 5 years ago

Olá @rcarocha , Os links que você está usando de fato não funcionam mais. O seguinte link deve funcionar:

"http://cepespdata.io/consulta/tse?cargo=6&agregacao_regional=2&agregacao_politica=4&anos%5B%5D=2014&uf_filter=&mun_filter=&query-table_length=10&c%5B%5D=ANO_ELEICAO&c%5B%5D=NUM_TURNO&c%5B%5D=DESCRICAO_CARGO&c%5B%5D=QT_VOTOS_BRANCOS&c%5B%5D=QT_VOTOS_NULOS"

Espero que ajude.

Sempre à disposição, Equipe Cepespdata

rcarocha commented 5 years ago

Eliana,

O problema mencionado diz respeito ao acesso via API REST e o link que você enviou é simplesmente para o acesso web ao CEPESPData.

Na documentação da API REST para a referida consulta está disponível em: https://github.com/Cepesp-Fgv/cepesp-rest/blob/master/EleicoesPorCargo.md . Pelo que vi, a API REST também mudou e a consulta correta aparentemente é:

curl -i -X GET "http://cepesp.io/api/consulta/votos?ano=2014&cargo=6&agregacao_regional=2&agregacao_politica=4&ignore_version=true&" 

O resultado dessa consulta retorna (apenas pequeno trecho exemplo):

...
"5000","TO","1","DEPUTADO FEDERAL","2014","289"
"5010","TO","1","DEPUTADO FEDERAL","2014","218"
"5033","TO","1","DEPUTADO FEDERAL","2014","615"
"5044","TO","1","DEPUTADO FEDERAL","2014","205"
"5050","TO","1","DEPUTADO FEDERAL","2014","73"
"51","TO","1","DEPUTADO FEDERAL","2014","620"
"54","TO","1","DEPUTADO FEDERAL","2014","169"
"55","TO","1","DEPUTADO FEDERAL","2014","3302"
"5510","TO","1","DEPUTADO FEDERAL","2014","62859"
...

Pelo que percebi e pelo que lembro - usei a API um ano atrás -, o resultado da consulta acho que deveria retornar uma saída BRANCOS e outra NULOS e isso não está ocorrendo. Convém verificar, pois esse problema pode ocorrer na API Python também.

Esse e outros erros que reportei, são relativos somente à API REST e não podem ser testados (a maioria) pela interface web.

[]s ricardo

lins-morandi commented 5 years ago

Obrigada, Ricardo. Vamos verificar!

De toda forma, você deve conseguir com a nova API Rest consultar:

cepesp.io/api/consulta/athena/query?table=tse&ano=2014&cargo=6&agregacao_regional=2&agregacao_politica=4&c[]=ANO_ELEICAO&c[]=NUM_TURNO&c[]=UF&c[]=DESCRICAO_CARGO&c[]=QTD_APTOS&c[]=QTD_COMPARECIMENTO&c[]=QTD_ABSTENCOES&c[]=QT_VOTOS_NOMINAIS&c[]=QT_VOTOS_BRANCOS&c[]=QT_VOTOS_NULOS&c[]=QT_VOTOS_LEGENDA

Desta primeira requisição, extraímos o id 6915, que utilizamos na consulta final: cepesp.io/api/consulta/athena/result?id=6915&ignore_version=true, que retorna o dado desejado (votos brancos e nulos por UF p/ Dep. Federal em 2014).

Note que essas duas colunas de fato não são default da consulta e, por isso, foi necessário incluir a lista de colunas desejadas da consulta (como &c[]=QT_VOTOS_BRANCOS).

Acho que isso resolve seu problema no momento.

Agradecemos seu comentário e ficamos à disposição, Equipe Cepespdata/FGV


@abraaobarros @luizgabriel , a seleção de múltiplos anos e de colunas, conforme aparece na nossa documentação da API Rest antiga não está funcionando no momento (Exemplos da nossa documentação que não funcionam: http://cepesp.io/api/consulta/tse?anos="2014,2010"&cargo=3&agregacao_regional=1&agregacao_politica=2&ignore_version=true" e "http://cepesp.io/api/consulta/tse?ano=2010&cargo=3&agregacao_regional=1&agregacao_politica=2&c[]="SIGLA_PARTIDO"&c[]="NUM_TURNO"&c[]="NOME_MACRO"&c[]="DESCRICAO_CARGO"&c[]="QTDE_VOTOS"&ignore_version=true").

luizgabriel commented 5 years ago

@elianalins De fato, o uso das aspas na API Rest invalida a requisição. A forma correta é:

http://cepesp.io/api/consulta/athena/query?table=tse&anos=2014,2010&cargo=3&agregacao_regional=1&agregacao_politica=2

e para as consultas com colunas:

http://cepesp.io/api/consulta/athena/query?table=tse&ano=2010&cargo=3&agregacao_regional=1&agregacao_politica=2&c[]=SIGLA_PARTIDO&c[]=NUM_TURNO&c[]=NOME_MACRO&c[]=DESCRICAO_CARGO&c[]=QTDE_VOTOS

Efetuei as devidas correções na documentação.


Ainda sim, acredito que o uso das aspas deveria ser opcional. Então, enviei uma correção para o servidor de teste em que o uso das aspas não gera erro.

http://test.cepesp.io/api/consulta/athena/query?table=tse&anos="2014,2010"&cargo=3&agregacao_regional=1&agregacao_politica="2"
lins-morandi commented 5 years ago

Obrigada, @luizgabriel !