2

私は sitemap.xml ファイルを作成したいリンクのベクトルを持っています (ファイルプロトコルはここから入手できます: http://www.sitemaps.org/protocol.html )

私は sitemap.xml プロトコルを理解しています (かなり単純です) が、そのために {XML} パッケージを使用する最もスマートな方法が何であるかはわかりません。

簡単な例:

 links <- c("http://r-statistics.com",
             "http://www.r-statistics.com/on/r/",
             "http://www.r-statistics.com/on/ubuntu/")

「リンク」を使用して sitemap.xml ファイルを作成するにはどうすればよいですか?

4

2 に答える 2

4

あなたが探しているのはこのようなものです。(httrパッケージを使用して、最後に変更されたビットを取得し、非常に便利なパッケージで XML を直接書き込みwhiskerます。)

require(whisker)
require(httr)
tpl <- '
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
 {{#links}}
   <url>
      <loc>{{{loc}}}</loc>
      <lastmod>{{{lastmod}}}</lastmod>
      <changefreq>{{{changefreq}}}</changefreq>
      <priority>{{{priority}}}</priority>
   </url>
 {{/links}}
</urlset>
'

links <- c("http://r-statistics.com", "http://www.r-statistics.com/on/r/", "http://www.r-statistics.com/on/ubuntu/")


map_links <- function(l) {
  tmp <- GET(l)
  d <- tmp$headers[['last-modified']]

  list(loc=l,
       lastmod=format(as.Date(d,format="%a, %d %b %Y %H:%M:%S")),
       changefreq="monthly",
       priority="0.8")
}

links <- lapply(links, map_links)

cat(whisker.render(tpl))
于 2012-09-04T14:09:09.723 に答える