Ro-dou icon indicating copy to clipboard operation
Ro-dou copied to clipboard

Criar opção de extração dos arquivos a partir de arquivos no INLabs

Open lucasbenevides opened this issue 1 year ago • 1 comments

A Imprensa Nacional instalou um bot manager da Cloudflare. Isto está dificultando muito a extração por meio da API de consulta.

No entanto, existe uma solução disponibilizada pela própria Imprensa Nacional é o INLabs. Ele disponibiliza os arquivos em ZIP+XML. A data de alteração do arquivo não é confiável, pois muda de 30 em 30 minutos, contudo, em testes preliminares, percebi que os arquivos não são alterados de fato.

A solução de busca no XML seria opcional, mediante configuração no arquivo YAML.

A busca no XML conseguiria resolver alguns comportamentos indesejados do RO-DOU, a saber:

  1. O Ro-dou identifica a assinatura dos documentos para excluir os termos procurados do campo assinatura. Para fazê-lo ele se usa de um resultado da busca, que retorna o nome do assinante no começo do resultado da busca. Ocasionalmente a assinatura não aparece no começo do resultado da busca e essa regra não funciona. Em uma análise preliminar não-exaustiva, identificamos que no arquivo XML existe uma tag

    antes da assinatura. Se esse padrão se repetir poderemos utilizá-lo para identificar a assinatura.

  2. Já sabemos que a API não encontra caracaters Ä, Ü se a busca contiver os caracteres A ou U, ou vice-versa. Isto é, a busca não é completamente ACCENT INSENSITIVE. Na busca com XML poderemos encontrar esses registros.
  3. Os servidores que possuem nomes curtos, frequentemente dão falsos positivos com nomes que contém o nome curto. Por exemplo: MARCELO DE LIMA é encontrado no nome MARCELO DE LIMA E SOUZA. No XML, podemos tentar identificar essas ocasiões, analistando o CASE de um eventual sobrenome ou prenome que seja acrescentado ao nome.

Além disso a busca XML diminuiria drásticamente o número de requisições e certamente será muito mais rápida do que busca na API, uma a uma.

Há o risco: não temos garantia de que o INLabs continuará funcionando. Também nunca validamos se a base de XML é 100% completa e correta.

lucasbenevides avatar Feb 06 '23 13:02 lucasbenevides