我正在学习R“R中的数据混搭”,我无法在p上获得示例. 5上班.我使用的代码是这样的:
# Install and load RCurl install.packages("RCurl") library("RCurl") # Install and load the XML package install.packages("XML") library("XML") # Download file and parse it appid<- 'ucVVQzLV34GQR4ppLwbdW6G8cCSZDoCBqAc53NXsWB3gXkmP1I4epLwMxboV.PfADi_2ubr2A7Cg8FO4Z3xVxxujza2FJ 8M-' street<-"11408 Bellflower Road" RCurl<-paste( "http://local.yahooapis.com/MapsService/V1/geocode?appid=",appid,"&street=",URLencode(street),"&city=Cleveland&state=OH",sep="") #xmlResult<-xmlTreeParse(requestUrl,isURL=TRUE) xmlResult<-xmlTreeParse(getURL(RCurl)) #Print the output str(xmlResult)
但是当我这样做时,我得不到以下结果:
List of 2 $doc:List of 3 ..$file :List of 2 .. ..$text : Named list() .. .. ..- attr(*,"class")= chr [1:5] "XMLTextNode" "XMLNode" "RXMLAbstractNode" "XMLAbstractNode" ... .. ..$Message:List of 1 .. .. ..$text: Named list() .. .. .. ..- attr(*,"class")= chr [1:5] "XMLTextNode" "XMLNode" "RXMLAbstractNode" "XMLAbstractNode" ... .. .. ..- attr(*,"class")= chr [1:4] "XMLNode" "RXMLAbstractNode" "XMLAbstractNode" "oldClass" .. ..- attr(*,"class")= chr [1:4] "XMLNode" "RXMLAbstractNode" "XMLAbstractNode" "oldClass" ..$version : Named list() .. ..- attr(*,"class")= chr [1:5] "XMLCommentNode" "XMLNode" "RXMLAbstractNode" "XMLAbstractNode" ... ..$children: Error in x$children[[...]] : subscript out of bounds
我究竟做错了什么?
解决方法
该API已被弃用.
Here is the current one.试试这个:
library("RCurl") library("XML") appid <- 'ucVVQzLV34GQR4ppLwbdW6G8cCSZDoCBqAc53NXsWB3gXkmP1I4epLwMxboV.PfADi_2ubr2A7Cg8FO4Z3xVxxujza2FJ 8M-' address <- paste("11408+Bellflower+Road","Cleveland","OH",sep=",+") urlRequest <- paste("http://where.yahooapis.com/geocode?q=",address,appid=appid,sep = "") doc <- xmlToList(xmlTreeParse(urlRequest)) # Convert to List str(doc)
它对我有用.虽然,您可能想检查它是否有正确的地址.没有邮政编码吗?您可能还想查看Google’s Geocoding API.它不再需要恼人的密钥.
List of 7 $Error : chr "0" $ErrorMessage: chr "No error" $Locale : chr "us_US" $Quality : chr "87" $Found : chr "1" $Result :List of 29 ..$quality : chr "87" ..$latitude : chr "41.511326" ..$longitude : chr "-81.605583" ..$offsetlat : chr "41.511230" ..$offsetlon : chr "-81.605453" ..$radius : chr "2900" ..$name : NULL ..$line1 : chr "11408 Bellflower Rd" ..$line2 : chr "Cleveland,OH 44106" ..$line3 : NULL ..$line4 : chr "United States" ..$house : chr "11408" ..$street : chr "Bellflower Rd" ..$xstreet : NULL ..$unittype : NULL ..$unit : NULL ..$postal : chr "44106" ..$neighborhood: NULL ..$city : chr "Cleveland" ..$county : chr "Cuyahoga County" ..$state : chr "Ohio" ..$country : chr "United States" ..$countrycode : chr "US" ..$statecode : chr "OH" ..$countycode : NULL ..$uzip : chr "44106" ..$hash : chr "BFBDCAB96C2CB175" ..$woeid : chr "12776632" ..$woetype : chr "11" $.attrs : Named chr "1.0" ..- attr(*,"names")= chr "version"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。