[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