#' Funcao que faz o download das informacoes de um processo de primeiro
#' grau (PG) no TJSP.
#'
#' Retorna um data.frame com os metadados basicos e andamentos do processo
#'
#' @export
cpo_pg <- function(processos, path = 'data-raw/cpo-pg') {
cpo_pg_um <- function(p, path) {
p <- gsub('[^0-9]', '', p)
arq <- sprintf('%s/%s.html', path, p)
if (!is.null(path) & file.exists(arq)) {
return(dplyr::data_frame(result = 'arquivo existe'))
}
Sys.sleep(1)
u <- build_url_cpo_pg(p)
if (!file.exists(arq)) {
r <- httr::GET(u, httr::config(ssl_verifypeer = FALSE),
httr::write_disk(arq))
}
k <- TRUE
while (r$status_code != 200) {
if (k) cat("\nesperando...") else cat("...")
if (!file.exists(arq)) {
r <- httr::GET(u, httr::config(ssl_verifypeer = FALSE),
httr::write_disk(arq))
}
k <- FALSE
}
if (!k) cat("\n")
return(dplyr::data_frame(result = 'OK'))
}
f <- dplyr::failwith(dplyr::data_frame(result = 'erro'), cpo_pg_um)
d <- dplyr::data_frame(n_processo = unique(processos))
d <- dplyr::do(dplyr::group_by(d, n_processo), f(.$n_processo, path = path))
d <- dplyr::ungroup(d)
d
}
build_url_cpo_pg <- function(p) {
p <- gsub("[^0-9]", "", as.character(p))
dados_url <- list("paginaConsulta" = "1",
"localPesquisa.cdLocal" = "-1",
"cbPesquisa" = "NUMPROC",
"tipoNuProcesso" = "UNIFICADO",
"numeroDigitoAnoUnificado" = "",
'foroNumeroUnificado' = "",
'dePesquisaNuUnificado' = "",
'dePesquisa' = "")
dados_url[["numeriDigitoAnoUnificado"]] <- stringr::str_sub(p, end = 15)
dados_url[["foroNumeroUnificado"]] <- stringr::str_sub(p, start = 22)
dados_url[["dePesquisaNuUnificado"]] <- p
url1 <- "http://esaj.tjsp.jus.br/cpo/pg/search.do"
parametros <- paste(names(dados_url), unlist(dados_url), sep = "=")
url2 <- paste(url1, paste0(parametros, collapse = "&"), sep = "?")
url2
}
#_______________________________________________________________________________
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.