У меня есть общедоступная папка Google Drive, содержащая десятки растровых файлов (.tif; папка здесь ). Я хотел бы загрузить один файл за раз и пропустить его через функцию в r (затем удалить / заменить растр), не используя oauth-токены (то есть пакеты apid tidyverse).
Пакет "googledrive", кажется, всегда запрашивает доступ к моему диску, даже если папка общедоступна. Это правильно? Я чувствую нерешительность при работе с токенами и предпочитаю использовать скрипт, который не требует этого. Вот что я попробовал с первым файлом, но остановился на нем, потому что tidyverse запросил доступ:
library(googledrive)
temp <- tempfile(tmpdir = "C:/Temp", fileext = ".tif")
test <- drive_download(as_id("1StU410Ox_azZUmsFISElB8uXVsNx72mG"), path = temp, overwrite = TRUE)
Я также попробовал пакет curl:
library(curl)
id <- "1StU410Ox_azZUmsFISElB8uXVsNx72mG"
URL <- sprintf("https://drive.google.com/drive/folders/%s", id)
con <- curl(URL)
Но не знаю, как извлечь растр оттуда.
Наконец я попробовал:
myUrl <- "https://drive.google.com/file/d/1StU410Ox_azZUmsFISElB8uXVsNx72mG/view?usp=sharing"
test <- raster(url(myUrl))
Но получено следующее сообщение об ошибке: Ошибка в (функция (классы, fdef, mtable): невозможно найти унаследованный метод для функции ‘raster’ для подписи ‘« url »’
Дайте мне знать, если есть возможность прочитать в r растровые файлы, сохраненные на Google Диске, без токенов. В связи с этим вопросом, возможно ли иметь цикл, который идет от одного файла к другому в папке Google Drive? Есть ли способ извлечь идентификатор всех файлов в папке Google Drive? Меня беспокоит пространство, если я скачаю всю папку.