Last active
February 7, 2018 17:11
-
-
Save jjesusfilho/7f1cb10a009c21bb9d5091ea3d69f590 to your computer and use it in GitHub Desktop.
Script com Tadeu
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
library(tjsp) | |
library(tidyverse) | |
library(stringr) | |
### Baixar dados de primeiro grau | |
### Fazer a busca na página do TJ: julgados de primeiro grau, copiar a url e colá-la aqui. | |
df<-tjpg("https://esaj.tjsp.jus.br/cjpg/pesquisar.do?conversationId=&dadosConsulta.pesquisaLivre=infantic%C3%ADdio&tipoNumero=UNIFICADO&numeroDigitoAnoUnificado=&foroNumeroUnificado=&dadosConsulta.nuProcesso=&dadosConsulta.nuProcessoAntigo=&classeTreeSelection.values=&classeTreeSelection.text=&assuntoTreeSelection.values=&assuntoTreeSelection.text=&agenteSelectedEntitiesList=&contadoragente=0&contadorMaioragente=0&cdAgente=&nmAgente=&dadosConsulta.dtInicio=&dadosConsulta.dtFim=&varasTreeSelection.values=&varasTreeSelection.text=&dadosConsulta.ordenacao=DESC") | |
write_excel_csv(df,"data") | |
## Baixar dados de segundo grau | |
d<-tjsg_meta("aborto") | |
Se a função funcionar, seguir linha a linha | |
function (livre, quote = TRUE, classes.value = "", inicio = "", | |
fim = "") | |
{ | |
set_config(config(ssl_verifypeer = FALSE)) | |
body <- list(dados.buscaInteiroTeor = "", dados.pesquisarComSinonimos = "S", | |
dados.pesquisarComSinonimos = "S", dados.buscaEmenta = "", | |
dados.nuProcOrigem = "", dados.nuRegistro = "", agenteSelectedEntitiesList = "", | |
contadoragente = "0", contadorMaioragente = "0", codigoCr = "", | |
codigoTr = "", nmAgente = "", juizProlatorSelectedEntitiesList = "", | |
contadorjuizProlator = "0", contadorMaiorjuizProlator = "0", | |
codigoJuizCr = "", codigoJuizTr = "", nmJuiz = "", classesTreeSelection.values = "", | |
classesTreeSelection.text = "", assuntosTreeSelection.values = "", | |
assuntosTreeSelection.text = "", comarcaSelectedEntitiesList = "", | |
contadorcomarca = "0", contadorMaiorcomarca = "0", cdComarca = "", | |
nmComarca = "", secoesTreeSelection.values = "", secoesTreeSelection.text = "1", | |
dados.dtJulgamentoInicio = "", dados.dtJulgamentoFim = "", | |
dados.dtRegistroInicio = "", dados.dtRegistroFim = "", | |
dados.origensSelecionadas = "T", tipoDecisaoSelecionados = "A", | |
dados.ordenacao = "data") | |
if (quote == TRUE) | |
livre <- deparse(livre) | |
body[[1]] <- "infanticídio" | |
body[[19]] <- classes.value | |
body[[30]] <- inicio | |
body[[31]] <- fim | |
a <- POST("https://esaj.tjsp.jus.br/cjsg/resultadoCompleta.do", | |
body = body) | |
b <- htmlParse(content(a, as = "text"), encoding = "UTF-8") | |
val <- xmlGetAttr(getNodeSet(b, "//*[@id='totalResultadoAba-A']")[[1]], | |
"value") | |
num <- as.numeric(val) | |
max_pag <- ceiling(num/20) | |
df <- data.frame() | |
for (i in 1:max_pag) { | |
tryCatch({ | |
c <- GET(paste0("https://esaj.tjsp.jus.br/cjsg/trocaDePagina.do?tipoDeDecisao=A&pagina=", | |
i), set_cookies(unlist(a$cookies))) | |
d <- htmlParse(content(c, as = "text"), encoding = "UTF-8") | |
aC <- xpathSApply(d, "//*[@class=\"assuntoClasse\"]", | |
xmlValue, trim = T) | |
assunto.processo <- str_trim(str_extract(aC, ".*?(?=/)")) | |
assunto.materia <- str_trim(str_extract(aC, "(?<=/\\s{0,100}).*")) | |
relator <- xpathSApply(d, "//*[@class=\"ementaClass2\"][1]", | |
xmlValue, trim = T) | |
comarca <- xpathSApply(d, "//*[@class=\"ementaClass2\"][2]", | |
xmlValue, trim = T) | |
orgao.julgador <- xpathSApply(d, "//*[@class=\"ementaClass2\"][3]", | |
xmlValue, trim = T) | |
data.julgamento <- xpathSApply(d, "//*[@class=\"ementaClass2\"][4]", | |
xmlValue, trim = T) | |
data.registro <- xpathSApply(d, "//*[@class=\"ementaClass2\"][5]", | |
xmlValue, trim = T) | |
ementa <- xpathSApply(d, "//textarea", xmlValue, | |
trim = T) | |
processo <- xpathSApply(d, "//*[@class=\"esajLinkLogin downloadEmenta\"]", | |
xmlValue, trim = T) | |
cdacordao <- xpathSApply(d, "//*[@class=\"downloadEmenta\"]", | |
xmlAttrs, trim = T)[2, ] | |
df1 <- data.frame(pagina = i, assunto.processo, assunto.materia, | |
relator, comarca, orgao.julgador, data.julgamento, | |
data.registro, processo, ementa, cdacordao) | |
df <- rbind(df, df1) | |
}, error = function(m) { | |
m | |
}, finally = { | |
next | |
}) | |
sys.sleep(2) | |
} | |
return(df) | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment