在 R 中合并 1000 个 HTML 文件 [英] Merge 1000 HTML files in R

查看:45
本文介绍了在 R 中合并 1000 个 HTML 文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有 1000 多个 html 文件,我想将它们合并在一起.我在下面提供了我是如何做的代码.但它没有合并,我得到了空白的 html 文件(合并).

I have more than 1000 html files and I want to merge them together. I have provided the code below how I am doing it. But it's not getting merge and I am getting blank html file(merged).

saveWidget(f1, "f1.html")
saveWidget(f2, "f2.html")
saveWidget(f3, "f3.html")
saveWidget(f4, "f4.html") and so on till saveWidget(f1000, "f1000.html")

合并文件的代码:

    library(htmlwidgets)
    htmlFiles<-list.files("/path/")
    library(htmltools)
    widgets <- list(htmlFiles)
    #fns <- replicate(length(widgets), tempfile(pattern = "widget_", fileext = #".html"))
    #Map(htmlwidgets::saveWidget, widgets, fns)

iframes <- lapply(widgets, function(fn) 
  tags$iframe(
    src = paste0("/path/", fn), 
    style="display:block", 
    height="300", width="1200"
  )  
)
tags$html(
  tags$body(
    iframes
  )
) %>% 
  save_html(tf<<-tempfile(fileext = ".html"))
shell.exec(tf)

提前致谢!

推荐答案

你可以做

library(htmltools)
widgets <- list(DT::datatable(mtcars), DT::datatable(USArrests))
fns <- replicate(length(widgets), tempfile(pattern = "widget_", fileext = ".html"))
Map(htmlwidgets::saveWidget, widgets, fns)

iframes <- lapply(fns, function(fn) 
  tags$iframe(
    src = paste0("file:///", fn), 
    style="display:block", 
    height="300", width="1200"
  )  
)
tags$html(
  tags$body(
    iframes
  )
) %>% 
  save_html(tf<<-tempfile(fileext = ".html"))
shell.exec(tf)

这篇关于在 R 中合并 1000 个 HTML 文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆