Testes de código para integrar, futuramente, o Radar Legislativo
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data
raspadorlegislativo
secrets
.env.sample
.gitignore
Dockerfile
LICENSE
Pipfile
Pipfile.lock
README.md
docker-compose.yml
scrapy.cfg

README.md

Raspador Legislativo

Repositório de testes de código para integrar, futuramente, o Radar Legislativo. O objetivo é automatizar a inclusão de projetos de lei e aganda de tramitação no Radar de acordo com palavras chaves.

Configurações

Copie os arquivos de configuração e edite-os de acordo com o desejado:

$ cp .env.sample .env
$ cp secrets/keywords.json.sample secrets/keywords.json

Coletando todos os projetos de lei

Não configurar a variável KEYWORDS faz com que o Raspador colete dados sobre todos os projetos de lei em tramitação desde START_DATE, mas nesse caso o Raspador não envia os resultados para a API do Radar Legislativo.

Enviando os dados para o Radar Legislativo

Configurando as variáveis RASPADOR_API_URL e RASPADOR_API_TOKEN de acordo com sua instância do Radar Legislativo faz com que os projetos de lei encontrados sejam enviados para o Radar desde que houver ao menos uma palavra-chave configurada no arquivo configurado na variávem de ambiente KEYWORDS.

Instalação em container (com Docker)

Requer Docker e Docker Compose.

Para rodar todos os raspadores:

$ docker-compose run --rm scrapy scrapy crawl camara
$ docker-compose run --rm scrapy scrapy crawl senado
$ docker-compose run --rm scrapy scrapy crawl agenda_camara
$ docker-compose run --rm scrapy scrapy crawl agenda_senado

Verifique o resultado no diretótio data/ (ou, se for o caso, na sua instância do Radar Legislativo).

Testes

docker-compose run --rm scrapy py.test

Instalação local (sem Docker)

Requer Python 3.6 com Pipenv.

Instale as dependências e entre no virtualenv:

$ pipenv install
$ pipenv shell

Para rodar todos os raspadores:

$ scrapy crawl camara
$ scrapy crawl senado
$ scrapy crawl agenda_camara
$ scrapy crawl agenda_senado

Verifique o resultado no diretótio data/ (ou, se for o caso, na sua instância do Radar Legislativo).

Testes

py.test