analytics-ufcg/rcongresso

Tratar IDs repetidas ao invés de dar erro 404?

andresmrm opened this issue · 6 comments

Atualmente, aparentemente, se der um fetch_tramitacao com um vetor de IDs em que algum valor é repetido dá erro 404.

Parece ser fácil de resolver o problema, apenas passando por um unique.

Minha questão é se esse unique deveria ser feito pela RCongresso, ou se a mensagem de erro deveria ser mais descritiva.

É provável que o mesmo problema afete outras funções da lib.

Passos para reproduzir o erro:

fetch_tramitacao(c("2175303", "2175303"))
Error: Falha na requisicao a API dos Dados Abertos. Erro 404 ao tentar acessar: > https://dadosabertos.camara.leg.br/api/v2/proposicoes/2175303/tramitacoes/api/v2/proposicoes/2175303/tramitacoes

Versão do Sistema Operacional e do R:

Arch Linux - R version 3.5.0

Olá, Andres!

Aparentemente é um erro na hora de montagem do link de consulta à API. Com ids iguais ele acaba juntando os links e gerando essa consulta monstro que realmente não vai retornar nada. Vou consertar esse bug usando essa estratégia que tu sugeriu, com o unique(), e acho que é responsabilidade do rcongresso porque o erro é na montagem do link e não necessariamente gerado por uma chamada incorreta do método. A montagem da query de consulta é responsabilidade do pacote.

Obrigado pelo report! Vou consertar assim que possível e te aviso quando o fizer.

Aceito sim, seria ótimo!

Veja o que você acha do código que coloquei no PR.

Prontinho. Aproveitei e corrigi a outra função fetch_relacionadas() que estava com o mesmo erro. Obrigado pela contribuição nos testes também :)