R v3.6.2
RStudio Desktop v1.2.5033
R пакет 'googledrive' v1.0.0
Я написал скрипт R, который загружает файлы CSV в Googlesheets аккаунт. Чтобы избежать необходимости автоматизировать это, я использовал функцию drive_auth (), чтобы обновить sh токен OAuth. Код просто:
drive_auth(
email = "email@gmail.com",
path = NULL,
scopes = "https://www.googleapis.com/auth/drive",
cache = gargle::gargle_oauth_cache(),
use_oob = gargle::gargle_oob_default(),
token = NULL
)
drive_upload(file, overwrite=TRUE, type="spreadsheet")
На компьютере с ОС ma c и Windows, затем открывается браузер по умолчанию, запрашивающий данные для входа. Когда они введены правильно, у скрипта теперь есть права на загрузку / редактирование файлов, и впоследствии функции googledrive работают. Он создает маркер полномочий в пути к файлу:
Home / Users / .R / garle / gargle-oauth
Однако при попытке сделать это на новом ноутбуке, который будет использоваться как на сервере меня встречают следующие сообщения об ошибках:
Error: can't get Google credentials.
Are you running googlesheets in a non-interactive session? Consider:
* sheets_deauth() to prevent the attempt to get credentials.
* call 'sheets_auth()' directly with all necessary specifics.
При проверке папки gargle-oauth он не создал токен OAuth, как это было автоматически с другими машинами при входе в Google данные для входа.
Я перезапустил программу на другом компьютере windows после удаления токена OAuth, и он работал нормально, снова создав токен с нуля. Я не могу точно определить причину, по которой этот токен не создается в данном случае.