使用 R 和 Rvest 自动完成并发送表单

Autocomplete and send a form with R and Rvest

我来这里之前看了很多。

我想自动完成表格并使用 Rvest 库将其与 R 一起发送。

这是表格:https://sedeaplicaciones.minetur.gob.es/shpCarburantes/

我知道问题出在名称上,但我找不到正确的名称。

希望你能帮助我。

提前致谢!

library(rvest)
url <- "https://sedeaplicaciones.minetur.gob.es/shpCarburantes/"
form <- url %>% read_html() %>% html_form()
set_values(form, 
      "ctl00$cph_Contenido$ddlTipoConsulta" = "0",
      "ctl00$cph_Contenido$ddlTipoTemp" = "0",
      "ctl00$cph_Contenido$txtFechaInicial" = "01/12/2018",
      "ctl00$cph_Contenido$txtFechaFinal" = "30/12/2018"
      )

Error: Unknown field names: ctl00$cph_Contenido$ddlTipoConsulta, 
ctl00$cph_Contenido$ddlTipoTemp, ctl00$cph_Contenido$txtFechaInicial, 
ctl00$cph_Contenido$txtFechaFinal

html_form() 的结果是表单列表,而不是单个表单。函数 set_values() 需要一个表单,因此您需要在调用它之前提取表单:

form <- url %>% read_html() %>% html_form()
form <- form[[1]]

set_values(form, 
  "ctl00$cph_Contenido$ddlTipoConsulta" = "0",
  "ctl00$cph_Contenido$ddlTipoTemp" = "0",
  "ctl00$cph_Contenido$txtFechaInicial" = "01/12/2018",
  "ctl00$cph_Contenido$txtFechaFinal" = "30/12/2018"
  )