r - 合并多个XML页面,调用URL

时间:2018-02-21 00:22:56

标签: r web-scraping xml-parsing html-parsing css-parsing

我正在尝试创建一个由多个xml页面组成的大数据框架。

我可以为单个页面创建数据框:

library(RCurl)
US_GrossiOS200<-getURL("https://rss.itunes.apple.com/api/v1/us/ios-apps/top-grossing/all/200/explicit.rss")

library(XML)
library(plyr)
USGr200.xml<-xmlTreeParse(US_GrossiOS200)
USGr200<-ldply(xmlToList(USGr200.xml), data.frame)

我想要抓取数百个URL。为了自动化这个过程,我想到了创建一个包含我想要抓取的所有URL的CSV文件。这是listofurls.csv列表的前两行(2行,1列)的示例:

1 https://rss.itunes.apple.com/api/v1/us/ios-apps/new-games-we-love/all/200/explicit.rss
2 https://rss.itunes.apple.com/api/v1/us/ios-apps/top-free/all/200/explicit.rss

在这个阶段,我可以使用getURL(CSV$URL) CSV <- read.csv(listofurls.csv)在控制台上编写两个页面的内容(我正在使用RStudio)。

str()输出的getURL(CSV$URL)内容如下:

Named chr [1:2] "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<rss version=\"2.0\" xmlns:atom=\"http://www.w3.org/2005/Atom\">\n "| __truncated__ ...
- attr(*, "names")= chr [1:2] "https://rss.itunes.apple.com/api/v1/us/ios-apps/new-games-we-love/all/200/explicit.rss" "https://rss.itunes.apple.com/api/v1/us/ios-apps/top-free/all/200/explicit.rss"  ...

我正在尝试使用xmlTreeParse(),但是我收到以下错误:

  

仅在文档开头提供XML声明

     

文件末尾的额外内容

     

错误:1:仅在文档开头允许XML声明

     

2:文档末尾的额外内容

建议?

0 个答案:

没有答案