是否有一個簡單的非 API R 命令或函式來獲取 github 存盤庫中 csv 檔案的基本元資料?我特別需要:(1)最后一次提交的日期和(2)位元組大小,我試圖將其拉入 RMarkdown 檔案。
這是一個示例檔案
uj5u.com熱心網友回復:
我不知道有一個簡單的函式可以做到這一點,但你可以撰寫一個小的網路抓取函式rvest來完成這項作業:
library(rvest)
file_metadata <- function(url) {
page <- read_html(url)
file <- tail(strsplit(url, "/")[[1]], 1)
div1 <- "text-mono f6 flex-auto pr-3 flex-order-2 flex-md-order-1"
size <- page %>%
html_elements(xpath = paste0("//div[@class='", div1, "']")) %>%
html_text() %>%
strsplit("\n") %>%
sapply(trimws) %>%
getElement(5)
last_commit <- page %>%
html_elements("relative-time") %>%
html_attr("datetime") %>%
as.POSIXct()
data.frame(file, size, last_commit)
}
在您的示例檔案 url 上對其進行測驗,我們有:
file_metadata(example_file)
#> file size last_commit
#> 1 EB_data_example.csv 1.32 KB 2022-01-18
使用reprex v2.0.2創建于 2022-10-04
完整的示例檔案 url
example_file<- paste0("https://github.com/BrunaLab/LAS6292_DataManagement/",
"blob/4b856c2fad350edaded78fba671023b8c544b1dd/",
"static/course-materials/class-sessions/03-spreadsheets/examples/",
"EB_data_example.csv")
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/512141.html
上一篇:如何更新從主分支到當前分支的更改
