代码之家  ›  专栏  ›  技术社区  ›  Rafael Díaz

rvest返回{xml_节点集(0)}

  •  0
  • Rafael Díaz  · 技术社区  · 6 年前

    我正试图从以下网站中获取数据框架

    https://infogram.com/detallecasos-1h7z2l9yqgdy2ow

    但我明白了

    {xml_nodeset (0)}
    

    我试图用多个答案来解决这个问题,但无法解决。我很感激能帮助我的人。

    library(rvest)
    
    read_html("https://infogram.com/detallecasos-1h7z2l9yqgdy2ow") %>% 
      html_nodes('table') %>%
      html_table(fill = TRUE)
    

    enter image description here

    0 回复  |  直到 6 年前
        1
  •  0
  •   Rafael Díaz    6 年前

    下面是返回表的代码

    library(rvest)
    library(stringr)
    library(rjson)
    library(data.table)
    
    pg <- read_html("https://infogram.com/detallecasos-1h7z2l9yqgdy2ow") 
    Mat <- pg %>% html_nodes("body") %>%
      html_nodes("script:contains('window.infographicData')") %>%
      html_text() %>% str_extract(string = ., pattern = "\\[\\[.*\\]\\]") %>% 
      substr(x = ., start = 2, stop = nchar(.)-1) %>% fromJSON() %>%
      do.call(rbind, .)
    
    colnames(Mat) = Mat[1, ]
    
    DT <- as.data.table(Mat[-1,-1])
    DT
         Fecha de diagnóstico Ciudad de ubicación Atención    Edad Sexo       Tipo* País de procedencia
      1:           06/03/2020              Bogotá     casa 10 a 19    F   Importado              Italia
      2:           09/03/2020                Buga hospital 30 a 39    M   Importado              España
      3:           09/03/2020            Medellín     casa 50 a 59    F   Importado              España
      4:           11/03/2020            Medellín     casa 50 a 59    M Relacionado            Colombia
      5:           11/03/2020            Medellín     casa 20 a 29    M Relacionado            Colombia
     ---                                                                                               
    227:           22/03/2020                Cali     casa 20 a 29    M   Importado      Estados Unidos
    228:           22/03/2020                Cali     casa 20 a 29    M   Importado              España
    229:           22/03/2020               Yopal     casa 30 a 39    F Relacionado            Colombia
    230:           22/03/2020             Armenia     casa 30 a 39    F Relacionado            Colombia
    231:           22/03/2020                Cali     casa 40 a 49    F Relacionado            Colombia
    
    推荐文章