-
Notifications
You must be signed in to change notification settings - Fork 1
/
README.Rmd
116 lines (88 loc) · 4.29 KB
/
README.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
---
output: github_document
---
<!-- README.md is generated from README.Rmd. Please edit that file -->
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
# datajudScraper
<!-- badges: start -->
<!-- badges: end -->
O pacote `{datjudScraper}` possui funções para baixar os arquivos .zip disponibilizados pelo [painel de estatísticas do poder judiciário](https://painel-estatistica.stg.cloud.cnj.jus.br/estatisticas.html), através da função `datajudScraper::baixar_datajud()`.
Para baixar um arquivo zip com os dados do DataJud, precisamos passar o nome do tribunal e o código do órgão judiciário (OJ).
O painel de estatísticas permite a coleta desses dados, que foram organizados em três conjuntos de dados deste pacote:
1. Tribunais: base `datajudScraper::tribunais`.
1. Municípios: base `datajudScraper::municipios`.
1. OJs: base `datajudScraper::ojs`
A base de OJs é a mais importante, pois contém todos os links que usamos para baixar um arquivo zip.
Por exemplo, digamos que o interesse seja baixar todos os dados do Tribunal de Justiça do Ceará (TJCE), na comarca de Sobral/CE.
O código abaixo lista todas as OJs dessa comarca.
```{r}
ojs_sobral <- datajudScraper::ojs |>
dplyr::filter(
sigla_tribunal == "TJCE",
nome_municipio == "SOBRAL"
) |>
dplyr::select(-file)
knitr::kable(ojs_sobral)
```
Para baixar os links, utilizamos `purrr::walk2()` em conjunto com a função `baixar_datajud()`:
```{r}
#| eval: false
purrr::walk2(
ojs_sobral$sigla_tribunal,
ojs_sobral$id_origem,
baixar_datajud,
path = "data-raw/zip"
)
```
Nem todos os arquivos baixam com sucesso. Nos casos em que temos sucesso, podemos acessar os arquivos zip e olhar os CSV. Abaixo, um código para dezipar e empilhar as bases.
```{r}
#| eval: false
# lista os arquivos zip
zips <- fs::dir_ls("data-raw/zip")
# dá unzip nos arquivos
purrr::walk(zips, ~{
usethis::ui_info(.x)
unzip(.x, exdir = "data-raw/csv")
})
# lê os arquivos em uma base única
csv <- fs::dir_ls("data-raw/csv")
ler_csv <- function(f) {
loc <- readr::locale(decimal_mark = ",", grouping_mark = ".")
readr::read_csv2(f, show_col_types = FALSE, locale = loc)
}
dados_consolidados <- purrr::map(csv, ler_csv) |>
dplyr::bind_rows(.id = "file")
dplyr::glimpse(dados_consolidados)
```
Os resultados dessa consulta ficam assim:
Rows: 62,453
Columns: 22
$ file <chr> "data-raw/csv/TJCE_14320_5PorcMaisAntigos…
$ Tribunal <chr> "TJCE", "TJCE", "TJCE", "TJCE", "TJCE", "…
$ `Código órgão` <dbl> 14320, 14320, 14320, 14320, 14320, 14320,…
$ `Nome órgão` <chr> "3ª VARA CIVEL DA COMARCA DE SOBRAL", "3ª…
$ Processo <chr> "0040915-19.2012.8.06.0167", "0040934-25.…
$ Grau <chr> "G1", "G1", "G1", "G1", "G1", "G1", "G1",…
$ `Recurso Originario` <chr> "Originário", "Originário", "Originário",…
$ `Pendente desde` <date> 2012-03-22, 2012-03-22, 2012-04-25, 2012…
$ `Quant dias até 31-Jul-2022` <dbl> 3783, 3783, 3749, 3747, 3740, 3715, 3713,…
$ Formato <chr> "Eletrônico", "Eletrônico", "Eletrônico",…
$ Procedimento <chr> "Conhecimento não criminal", "Conheciment…
$ `Nível de sigilo` <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
$ Ano <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
$ Mês <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
$ `Data de Referência` <date> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, …
$ Município <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
$ UF <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
$ Classe <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
$ `Código classe` <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
$ `Concluso desde` <date> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, …
$ `Tipo de conclusão` <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
$ `Última movimentação` <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…