首页 > 解决方案 > 在 R 中导出 html 表并识别超链接

问题描述

我知道这个问题已经被问过几次了,但不幸的是,所提供的答案不适合我的任务。这是一个示例:将 R 中的表导出到带有超链接的 HTML

我需要将数据框从 R 导出到 html,同时提供可以单击以打开网站的超链接。以下 2 种格式仅导出为文本而非活动超链接。

预期的输出是在 html 中:列链接有网址作为链接,我可以单击一个,列 link2 显示名称,当我单击它时,它会打开相同的链接。现在发生的情况是,我在“link”列中看到了一个非活动链接,并在“link2”列中看到了 HTML 代码。

1   wiki    https://en.wikipedia.org/wiki/Main_Page <a href="https://en.wikipedia.org/wiki/Main_Page" target="_blank">wiki</a>
2   google  https://www.google.com/ <a href="https://www.google.com/" target="_blank">google</a>

我试图深入研究包参数,但找不到答案。https://cran.r-project.org/web/packages/tableHTML/tableHTML.pdf

谢谢你

这是我正在使用的代码。

name = c("wiki", "google")
link = c("https://en.wikipedia.org/wiki/Main_Page", "https://www.google.com/")

df = data.frame(name, link)
df$link2 = paste0("<a href='",df$link,">",df$name,"</a>", sep="")

tableHTML::write_tableHTML(tableHTML(df), file = "df.html") 

标签: htmlrexporttablehtmlexport-to-html

解决方案


在做了一些额外的阅读之后,我想我找到了一种不理想但有效的方法。

这是有效的代码:

library(tableHTML)

name = c("wiki", "google")
link = c("https://en.wikipedia.org/wiki/Main_Page", "https://www.google.com/")

df = data.frame(name, link)
 
df$link2 = paste('<a href="', df$link, '" target="_blank">', df$name, '</a>', sep="")


tableHTML::write_tableHTML(tableHTML(df, escape = F), file = "df.html") 

推荐阅读