Code Monkey home page Code Monkey logo

backend-challenge's Introduction

Web Scraping

O web scraping (raspagem de rede, em tradução livre), também conhecido como extração de dados da web, é o nome dado ao processo de coleta de dados estruturados da web de maneira automatizada. Em geral, esse método é usado por pessoas, empresas que desejam usar a vasta quantidade de dados da web disponíveis publicamente para tomar decisões mais inteligentes.

O desafio

  • Fazer um web scraping da tabela de dados do Portal da Transparência do Governo Federal
  • armazenar num banco de dados relacional
  • fornecer um endpoint (/api/dados) que retorne um json com os dados coletados:
    • Estrutura do retorno da API:
      • mes_ano
      • programa_orcamentario
      • acao_orcamentaria
      • valor_empenhado
      • valor_liquidado
      • valor_pago
      • valor_restos_a_pagar_pagos

Bônus: Fazer o scraping de todas as páginas da tabela do site

A tabela de dados para o scraping fica em (ver print abaixo):

https://www.transparencia.gov.br/despesas/orgao?ordenarPor=orgaoSuperior&direcao=asc

Untitled

Sugestões

  • Preferencialmente utilize PHP, mas esteja livre para usar qualquer linguagem
  • Sugerimos usar docker para facilitar o desenvolvimento e a avaliação do resultado
  • Faça um segundo README com o nome PROJETO.md explicando o que foi feito, como forma de documentação.
  • Diferenciais:
    • Boa documentação
    • Testes unitários modulares

Como você deve nos enviar sua solução?

Faça um clone deste projeto, crie uma branch com seu nome-sobrenome e ao finalizar abra um pull-request para que um avaliador da agilize possa visualizar e envie um e-mail para [email protected] com o assunto: [DESAFIO BACKEND AGZ] + Finalizado + (nome-da-branch)

Como abrir um pull request

  • Passo 1: Fazer um fork do projeto
  • Passo 2: Clonar seu fork para o seu computador
  • Passo 3: Fazer o projeto em sua branch
  • Passo 4: Abrir o pull request

Para mais detalhes esse link tem uma explicação bastante completa

backend-challenge's People

Contributors

breno3b avatar israelbrs avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.