[R] Assistance with httr package with R version 3.3.0
Luca Meyer
lucam1968 at gmail.com
Tue May 10 09:27:12 CEST 2016
Hi Jim,
Thank you for your suggestion. I have actually tried to upload XML and xml2
but nothing changed...any other suggestion?
Kind regards,
Luca
> rm(list=ls())
> library(httr)
> library(XML)
> library(xml2)
>
> #carico i dati da Google spreadsheets
> url <- "
https://docs.google.com/spreadsheets/d/102-jJ7x1YfIe4Kkvb9olQ4chQ_TS90jxoU0vAbFZewc/pubhtml?gid=0&single=true
"
> readSpreadsheet <- function(url, sheet = 1){
+ r <- GET(url)
+ html <- content(r)
+ sheets <- readHTMLTable(html, header=FALSE, stringsAsFactors=FALSE)
+ df <- sheets[[sheet]]
+ dfClean <- function(df){
+ nms <- t(df[1,])
+ names(df) <- nms
+ df <- df[-1,-1]
+ row.names(df) <- seq(1,nrow(df))
+ df
+ }
+ dfClean(df)
+ }
> dati <- readSpreadsheet(url)
Error in (function (classes, fdef, mtable) :
unable to find an inherited method for function ‘readHTMLTable’ for
signature ‘"xml_document"’
> rm(readSpreadsheet,url)
2016-05-10 8:52 GMT+02:00 Jim Lemon <drjimlemon a gmail.com>:
> Hi Luca,
> The function readHTMLtable is in the XML package, not httr. Perhaps
> that is the problem as I don't see a dependency in httr for XML
> (although xml2 is suggested).
>
> Jim
>
>
> On Tue, May 10, 2016 at 2:58 PM, Luca Meyer <lucam1968 a gmail.com> wrote:
> > Hello,
> >
> > I am trying to run a code I have been using for a few years now after
> > downloading the new R version 3.3.0 and I get the following error:
> >
> >> rm(list=ls())
> >> library(httr)
> >>
> >> #carico i dati da Google spreadsheets
> >> url <- "
> >
> https://docs.google.com/spreadsheets/d/102-jJ7x1YfIe4Kkvb9olQ4chQ_TS90jxoU0vAbFZewc/pubhtml?gid=0&single=true
> > "
> >> readSpreadsheet <- function(url, sheet = 1){
> > + r <- GET(url)
> > + html <- content(r)
> > + sheets <- readHTMLTable(html, header=FALSE, stringsAsFactors=FALSE)
> > + df <- sheets[[sheet]]
> > + dfClean <- function(df){
> > + nms <- t(df[1,])
> > + names(df) <- nms
> > + df <- df[-1,-1]
> > + row.names(df) <- seq(1,nrow(df))
> > + df
> > + }
> > + dfClean(df)
> > + }
> >> dati <- readSpreadsheet(url)
> > Error in (function (classes, fdef, mtable) :
> > unable to find an inherited method for function ‘readHTMLTable’ for
> > signature ‘"xml_document"’
> >> rm(readSpreadsheet,url)
> >
> > Can anyone suggest a solution to it?
> >
> > Thanks,
> >
> > Luca
> >
> > [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > R-help a r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> > and provide commented, minimal, self-contained, reproducible code.
>
[[alternative HTML version deleted]]
More information about the R-help
mailing list