Scraper de estatísticos registrados nas pesquisas do TSE.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
R
data-raw
data
inst/app
man
.Rbuildignore
.gitignore
.travis.yml
DESCRIPTION
LICENSE
NAMESPACE
README.Rmd
README.md
appveyor.yml
cran-comments.md
pesqEle.Rproj

README.md

Travis-CI Build Status AppVeyor Build Status CRAN_Status_Badge

pesqEle

Scraper de estatísticos registrados nas pesquisas eleitorais do Tribunal Superior Eleitoral (TSE). O objetivo desse pacote é mostrar todas as pesquisas eleitorais registradas e algumas de suas características, com o fim de obter uma visão geral dos registros e identificar potenciais fraudes.

Instalação

Você pode instalar o pesqEle from github com:

# install.packages("devtools")
devtools::install_github("conre3/pesqEle")

Quando esse pacote estiver no CRAN, você poderá instalá-lo rodando

install.packages("pesqEle")

Exemplo

A função pe_2018() Faz o download de todas as pesquisas de 2018 por raspagem de dados. Por padrão, os arquivos HTML são armazenados na pasta data-raw/html_2018, mas é possível alterar essa pasta pelo parâmetro path=.

pe <- pe_2018("pasta")
dplyr::glimpse(pe)
Observations: 184
Variables: 24
$ id_seq             <int> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14...
$ id_pesq            <chr> "MA-05302/2018", "DF-03958/2018", "DF-06553/2...
$ info_uf            <chr> "MA", "DF", "DF", "PI", "PI", "SP", "SP", "PI...
$ info_election      <chr> "Eleições Gerais 2018", "Eleições Gerais 2018...
$ info_position      <chr> "", "Deputado Distrital", "Deputado Federal",...
$ comp_nm            <chr> "M R BORGES SERVICOS / MBO PUBLICIDADE, MARKE...
$ comp_cnpj          <chr> "00905916000190", "00850844000121", "00850844...
$ comp_contract_same <chr> "Sim", "Sim", "Sim", "Não", "Não", "Não", "Nã...
$ stat_id            <chr> "1791", "CONRE 1a. Região No. 9403", "CONRE 1...
$ stat_nm            <chr> "ANTONIO CARLOS RODRIGUES BARBOSA", "LUCIANA ...
$ pesq_n             <dbl> 10973, 3200, 3200, 320, 320, 601, 601, 320, 8...
$ pesq_val           <dbl> 15700, 32000, 32000, 3000, 3000, 6000, 0, 300...
$ pesq_contractors   <chr> "CNPJ: 00905916000190 - M R BORGES SERVICOS",...
$ pesq_origin        <chr> "Vazio", "Vazio", "Vazio", "Recursos proprios...
$ pesq_same          <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FAL...
$ dt_reg             <date> 2018-05-12, 2018-03-26, 2018-03-26, 2018-02-...
$ dt_pub             <date> 2018-05-18, 2018-04-01, 2018-04-01, 2018-02-...
$ dt_start           <date> 2018-03-26, 2018-03-21, 2018-03-21, 2018-02-...
$ dt_end             <date> 2018-05-04, 2018-03-30, 2018-03-30, 2018-02-...
$ txt_verif          <chr> "Sistema interno de controle e verificação, c...
$ txt_method         <chr> "METODOLOGIA: A pesquisa foi realizada median...
$ txt_about          <chr> "Trata-se de uma amostra não aleatória por co...
$ txt_plan           <chr> ". PLANO AMOSTRAL E INTERVALOS DE CONFIANÇA: ...
$ stat_unique        <chr> "1791_A535", "9403_L252", "9403_L252", "5102_...

Ao rodar pela primeira vez, provavelmente o download demorará por volta de 15-20 minutos, dependendo da conexão com a internet. Nas próximas vezes o download é mais rápido pois o programa não baixa pesquisas já armazenadas em arquivos HTML.

Se não quiser rodar a função pe_2018(), armazenamos os dados no objeto pesqEle::pesqEle_2018. Esse objeto é uma data.frame() com as mesmas colunas resultantes de pe_2018(). Essas variáveis são:

  • Identificadores:
    • id_seq: ID sequencial
    • id_pesq: ID de registro da pesquisa
  • Informações da eleição
    • info_uf: Unidade Federativa indicando abrangência da pesquisa ("BR" = Brasil)
    • info_election: Eleição (no caso, sempre 2018)
    • info_position: Cargo eleitoral
  • Informações da empresa
    • comp_nm: Nome da empresa que realizou a pesquisa
    • comp_cnpj: CNPJ da empresa que realizou a pesquisa
    • comp_contract_same: Contratante é a própria empresa?
  • Informações do estatístico responsável
    • stat_id: ID do estatístico
    • stat_nm
    • stat_unique: Código único do estatístico. Os nomes dos estatísticos estavam escritos de formas diferentes, então arrumamos utilizando o pacote SoundexBR e outras heurísticas. Nada garante que o pacote contenha mais erros nos nomes.
  • Informações sobre a pesquisa
    • pesq_n: Tamanho da amostra.
    • pesq_val: Custo da pesquisa informado no registro.
    • pesq_contractors: Empresas que contrataram a pesquisa.
    • pesq_origin: Origem dos recursos da pesquisa.
    • pesq_same: Indica se o contratante da pesquisa é a própria empresa e a pesquisa foi realizada com recursos próprios (em 2018 não tem nenhuma).
  • Datas
    • dt_reg: Data de registro da pesquisa.
    • dt_pub: Data de publicação da pesquisa.
    • dt_start: Data de início da pesquisa.
    • dt_end: Data de término da pesquisa.
  • Informações adicionais (texto)
    • txt_verif, txt_method, txt_about, txt_plan: informações adicionais da pesquisa, geralmente em texto, sobre metodologia, aplicação e outros detalhes.

Shiny App

Após instalar o pacote, você pode rodar o app do pesqEle rodando

shiny::runApp(system.file("app", package = "pesqEle"))

Para rodar o app, além dos pacotes do tidyverse e shiny, você precisará instalar os pacotes shinydashboard, highcharter, shinyBS e shinyjs. Todos eles estão no CRAN e podem ser instalados via install.packages().

Cuidado

Os nomes dos estatísticos estavam escritos de formas diferentes, então arrumamos utilizando o pacote SoundexBR e outras heurísticas. Nada garante que o pacote contenha mais erros nos nomes.

Licença

MIT