library(rvest)

link = "https://es.wikipedia.org/wiki/Anexo:Países_por_tasa_de_homicidio_intencional"
path = '/html/body/div[2]/div/div[3]/main/div[3]/div[3]/div[1]/table[2]'
dataWS <- read_html(link)%>%html_nodes(xpath = path)%>%html_table()%>% .[[1]]
head(dataWS)
## # A tibble: 6 × 6
##   Tasas de homicidio de la ONUDD…¹ Tasas de homicidio d…² Tasas de homicidio d…³
##   <chr>                            <chr>                  <chr>                 
## 1 País / Territorio                Tasa                   Conteo                
## 2 Burundi                          6,2                    635                   
## 3 Eritrea                          8,0                    390                   
## 4 Kenia                            4,9                    2643                  
## 5 Sudán del Sur                    14,1                   1504                  
## 6 Malaui                           1,8                    279                   
## # ℹ abbreviated names:
## #   ¹​`Tasas de homicidio de la ONUDD el año más reciente.[15]​[16]​`,
## #   ²​`Tasas de homicidio de la ONUDD el año más reciente.[15]​[16]​`,
## #   ³​`Tasas de homicidio de la ONUDD el año más reciente.[15]​[16]​`
## # ℹ 3 more variables:
## #   `Tasas de homicidio de la ONUDD el año más reciente.[15]​[16]​` <chr>,
## #   `Tasas de homicidio de la ONUDD el año más reciente.[15]​[16]​` <chr>, …
# Asignar el encabezado como nombres de columna
colnames(dataWS) <- dataWS[1,]

# Eliminar la primera fila
dataWS <- dataWS[-1,]

rownames(dataWS) <- NULL
str(dataWS)
## tibble [198 × 6] (S3: tbl_df/tbl/data.frame)
##  $ País / Territorio: chr [1:198] "Burundi" "Eritrea" "Kenia" "Sudán del Sur" ...
##  $ Tasa             : chr [1:198] "6,2" "8,0" "4,9" "14,1" ...
##  $ Conteo           : chr [1:198] "635" "390" "2643" "1504" ...
##  $ Región           : chr [1:198] "África" "África" "África" "África" ...
##  $ Subregión        : chr [1:198] "África subsahariana" "África subsahariana" "África subsahariana" "África subsahariana" ...
##  $ Año del dato     : chr [1:198] "2016" "2015" "2022" "2012" ...
dataWS$Tasa <- gsub(",", ".", dataWS$Tasa)
colnames(dataWS)[colnames(dataWS) == "Año del dato"] <- "año"
dataWS$año <- substr(dataWS$año, 1, 4)

screapeo 2 reniec

url="https://www.gob.pe/institucion/reniec/funcionarios"
pagina_web=read_html(url)


css_nombre="h3.text-2xl" 
nombre_html <- html_nodes(pagina_web,css_nombre)
nombre_texto <- html_text(nombre_html) 

css_cargo="p"
cargo_html <- html_nodes(pagina_web,css_cargo)
cargo_texto <- html_text(cargo_html)

reniec <- data.frame(NOMBRE = nombre_texto, CARGO = cargo_texto)
head(reniec)
##                             NOMBRE                             CARGO
## 1 Carmen Milagros Velarde Koechlin                     Jefa Nacional
## 2    Gladis Virginia Cachay Espino                   Gerenta General
## 3      Gabriela Bertha Herrera Tan                Secretaria General
## 4      Luis Baltazar Bezada Chavez     Director de Registros Civiles
## 5      Lia Llanet  Calderón Romero  Directora del Registro Electoral
## 6         Juan Carlos Castro Pinto Director de Servicios Registrales
url="https://www.gob.pe/institucion/reniec/funcionarios?sheet="
css_cargo="p"
css_name="h3.text-2xl"
final_table = list() 
for(i in 1:4) { # INPUT
  webpage <- read_html(paste0(url, i)) #obtenemos el código html de las 4 páginas
  cargo_texto <- webpage %>%
    html_nodes(css_cargo) %>% # obtener el código html del css del cargo
    html_text() # lo convertimos en un vector de texto
  name_texto <- webpage %>%
    html_nodes(css_name) %>% # obtener el código html del css del name
    html_text() # lo convertimos en un vector de texto

final_table[[i]] <- data.frame(NOMBRE=name_texto, CARGO=cargo_texto) # OUTPUT: Con esto estamos creando una lista con 3 data frames que contenga las 3 páginas scrapeadas
}
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
datareniec = bind_rows(final_table)
head(datareniec)
##                             NOMBRE                             CARGO
## 1 Carmen Milagros Velarde Koechlin                     Jefa Nacional
## 2    Gladis Virginia Cachay Espino                   Gerenta General
## 3      Gabriela Bertha Herrera Tan                Secretaria General
## 4      Luis Baltazar Bezada Chavez     Director de Registros Civiles
## 5      Lia Llanet  Calderón Romero  Directora del Registro Electoral
## 6         Juan Carlos Castro Pinto Director de Servicios Registrales