簡體   English   中英

RVest R抓取-html_table()中缺少表格

[英]rvest R scraping - Missing tables from html_table()

我是rvest的初學者。 我正在嘗試從意大利內政部網站上刮一些桌子。 我使用基於在線教程的代碼,但是html_table無法找到任何表。 當我嘗試獲取所有表時會發生這種情況:

url <- "http://finanzalocale.interno.gov.it/apps/floc.php/certificati/index/codice_ente/1030491450/cod/4/anno/2014/md/0/cod_modello/CCOU/tipo_modello/U/cod_quadro/04"
webpage <- read_html(url)
tables <- html_table(webpage)
table1 <- tables[[1]]

而且當我嘗試使用Xpath獲得一個

url <- "http://finanzalocale.interno.gov.it/apps/floc.php/certificati/index/codice_ente/1030491450/cod/4/anno/2014/md/0/cod_modello/CCOU/tipo_modello/U/cod_quadro/04"
table <- url %>%
  read_html() %>%
  html_nodes(xpath='//*[@id="center"]/div[3]/table') %>%
  html_table()
table <- table[[1]]
head(table)

這個問題似乎是特定於此網站的,因為上面的代碼適用於例如Wikipedia頁面。

解決此網站上發布的類似問題(例如刪除評論標簽)對我不起作用。

非常感激任何的幫助!

沒有RSelenium或splasher的情況下工作正常:

library(rvest)
library(tidyverse)
pg <- read_html("http://finanzalocale.interno.gov.it/apps/floc.php/certificati/index/codice_ente/1030491450/cod/4/anno/2014/md/0/cod_modello/CCOU/tipo_modello/U/cod_quadro/04")

html_nodes(pg, "table.table-striped") %>%
  purrr::map(html_table) %>%
  purrr::map(as_tibble)
## [[1]]
## # A tibble: 75 x 11
##    `FUNZIONI E SERVIZI / … Personale  `Acquisto di beni … `Prestazioni di…
##    <chr>                   <chr>      <chr>               <chr>           
##  1 Funzioni generali di a… 141.967.7… 2.489.137,83        59.941.306,62   
##  2 Organi istituzionali, … 16.229.61… 320.049,90          8.575.927,57    
##  3 indennità per gli orga… 0,00       0,00                4.741.000,00    
##  4 - Segreteria generale,… 40.013.84… 353.042,85          13.399.011,09   
##  5 Gestione economica, fi… 7.925.580… 48.425,00           8.885.886,94    
##  6 Gestione delle entrate… 7.630.190… 12.111,52           13.313.546,15   
##  7 Gestione dei beni dema… 2.166.540… 1.759,99            1.233.312,68    
##  8 Ufficio tecnico         14.404.02… 67.468,00           2.940.932,06    
##  9 Anagrafe, stato civile… 16.826.86… 293.263,23          6.139.023,55    
## 10 Altri servizi generali… 36.771.12… 1.393.017,34        5.453.666,58    
## # ... with 65 more rows, and 7 more variables: `Utilizzo di beni di
## #   terzi` <chr>, Trasferimenti <chr>, `Interessi passivi e oneri
## #   finanziari diversi` <chr>, `Imposte e tasse` <chr>, `Oneri
## #   straordinari della gestione corrente` <chr>, `Ammortamenti di
## #   esercizio` <chr>, Totale <chr>
## 
## [[2]]
## # A tibble: 75 x 11
##    `FUNZIONI E SERVIZI / … Personale  `Acquisto di beni … `Prestazioni di…
##    <chr>                   <chr>      <chr>               <chr>           
##  1 Funzioni generali di a… 131.219.7… 1.153.701,07        31.627.112,30   
##  2 Organi istituzionali, … 15.658.15… 94.401,50           5.841.240,89    
##  3 indennità per gli orga… 0,00       0,00                3.769.143,70    
##  4 Segreteria generale, p… 38.448.56… 167.482,23          7.507.263,62    
##  5 Gestione economica, fi… 7.662.138… 29.961,40           6.347.472,21    
##  6 Gestione delle entrate… 7.487.402… 7.671,92            2.497.130,97    
##  7 Gestione dei beni dema… 2.100.595… 1.759,99            852.589,53      
##  8 Ufficio tecnico         11.334.26… 47.329,00           1.568.994,43    
##  9 Anagrafe, stato civile… 16.144.91… 223.148,43          4.077.270,69    
## 10 Altri servizi generali… 32.383.70… 581.946,60          2.935.149,96    
## # ... with 65 more rows, and 7 more variables: `Utilizzo di beni di
## #   terzi` <chr>, Trasferimenti <chr>, `Interessi passivi e oneri
## #   finanziari diversi` <chr>, `Imposte e tasse` <chr>, `Oneri
## #   straordinari della gestione corrente` <chr>, `Ammortamenti di
## #   esercizio` <chr>, Totale <chr>
## 
## [[3]]
## # A tibble: 74 x 11
##    `FUNZIONI E SERVIZI / … Personale  `Acquisto di beni … `Prestazioni di…
##    <chr>                   <chr>      <chr>               <chr>           
##  1 Funzioni generali di a… 5.593.882… 2.190.159,89        22.691.402,00   
##  2 Organi istituzionali, … 463.851,43 1.649.220,45        2.549.386,60    
##  3 indennità per gli orga… 0,00       0,00                554.624,70      
##  4 Segreteria generale, p… 1.312.740… 47.613,00           8.238.186,49    
##  5 Gestione economica, fi… 227.143,48 12.365,99           2.101.177,76    
##  6 Gestione delle entrate… 220.687,71 16.698,92           3.981.304,84    
##  7 Gestione dei beni dema… 62.536,51  293,70              255.524,99      
##  8 Ufficio tecnico         1.933.388… 27.547,69           1.236.148,00    
##  9 Anagrafe, stato civile… 394.806,86 69.201,92           1.971.067,96    
## 10 Altri servizi generali  978.727,38 367.218,22          2.358.605,36    
## # ... with 64 more rows, and 7 more variables: `Utilizzo di beni di
## #   terzi` <chr>, Trasferimenti <chr>, `Interessi passivi e oneri
## #   finanziari diversi` <chr>, `Imposte e tasse` <chr>, `Oneri
## #   straordinari della gestione corrente` <chr>, `Ammortamenti di
## #   esercizio` <chr>, Totale <chr>

您可以使用RSelenium打開在其中生成頁面的瀏覽器,然后使用rvest刮擦表(就像您所做的一樣):

library(rvest)
library(RSelenium)
rD <- rsDriver()
remDr <- rD[["client"]]
remDr$navigate("http://finanzalocale.interno.gov.it/apps/floc.php/certificati/index/codice_ente/1030491450/cod/4/anno/2014/md/0/cod_modello/CCOU/tipo_modello/U/cod_quadro/04")
webpage <- read_html(remDr$getPageSource()[[1]])
tables <- webpage %>% html_table(fill=T)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM