Skip to content

Instantly share code, notes, and snippets.

@jjesusfilho
Last active March 23, 2019 02:16
Show Gist options
  • Save jjesusfilho/0b09643fb1b9891612963b04fa7a20be to your computer and use it in GitHub Desktop.
Save jjesusfilho/0b09643fb1b9891612963b04fa7a20be to your computer and use it in GitHub Desktop.
Extrai dados com base no CNPJ
cnpj<-function(cnpj){
cnpj<-str_replace_all(cnpj,"\\D+","")
cnpj<-str_trim(cnpj)
cnpj<-str_pad(cnpj,8,"left",0)
df <- as.data.frame(setNames(replicate(30,numeric(0), simplify = F),
c("atividade_principal.text","atividade_principal.code","data_situacao","nome","uf","telefone","email","atividades_secundarias.text1","atividades_secundarias.text2","atividades_secundarias.code1","atividades_secundarias.code2","situacao","bairro","logradouro","numero","cep","municipio","abertura","natureza_juridica","fantasia","cnpj","ultima_atualizacao","status","tipo","complemento","efr","motivo_situacao","situacao_especial","data_situacao_especial","capital_social")))
for (i in seq(cnpj)){
tryCatch({
d<-paste0("http://receitaws.com.br/v1/cnpj/",cnpj[i])
e<-jsonlite::fromJSON(d)
f<-as.data.frame(t(unlist(e)),stringsAsFactors = F)
df<-plyr::rbind.fill(df,f)
}, error=function(m){
m
}, finally={
next
})
Sys.sleep(.1)
}
return(df)
}
@lago1970
Copy link

lago1970 commented Feb 5, 2018

Caro José, antes de mais nada, parabéns pelo desenvolvimento desse código. Bom, eu estou iniciando na linguagem R e não tenho experiência com linguagens de programação de forma geral. Pergunto-lhe, então, como eu posso utilizar esse código para baixar, por exemplo as fichas cadastrais das empresas de Brasília? Eu tenho interesse especialmente em acessar os códigos CNAE. P.S.: como contornar a barreira do CAPTCHA???? Desde já, agradecido.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment