我想使用谷歌Google電子表格或表格+電子表格來收集R用戶的回覆並將其發送到電子表格。將信息發送到Google Spreadsheets/Google表單
下面是一個最小的谷歌形式:https://docs.google.com/forms/d/1tz2RPftOLRCQrGSvgJTRELrd9sdIrSZ_kxfoFdHiqD4/viewform
我想我會用珍妮Bryan的googlesheets包像這樣:
library(googlesheets);library(dplyr)
(my_sheets <- gs_ls())
minresp <- gs_title("minimal (Responses)")
minresp %>% gs_add_row(ws = "dat", input = mtcars[20, 1:2])
偉大的作品,但如果我包括代碼和其他人(即,誰不是我)試圖使用代碼:
Error in gs_lookup(., "sheet_title", verbose) :
"minimal (Responsess)" doesn't match sheet_title of any sheet returned by gs_ls() (which should reflect user's Google Sheets home screen).
所以在小品我看到有開:
#需要訪問你不擁有一個表嗎?
#如果您知道它,請通過鍵訪問它!
我想這是爲了讓別人來輸入數據到電子表格中的車票,所以我嘗試:
minresp2 <- gs_key("1xemHzTdeqgMuGbsP6oqDYuMu4PymBdw7k7kMC_-Dsi8")
產生:
Authentication will be used.
Error in gs_lookup(., "sheet_key", verbose) :
"1xemHzTdeqgMuGbsP6oqDYuMu4PymBdw7k7kMC_-Dsi8" doesn't match sheet_key of any sheet returned by gs_ls() (which should reflect user's Google Sheets home screen).
這一切工作,如果我登錄到並通過谷歌認證,但我怎麼可以讓用戶可以添加到我的電子表格。我不在乎使用什麼方法/包。如果用戶只能通過在函數中使用來編輯spreasheet,而不是簡單地查看源代碼並獲取url並手動編輯,那很好,但這不是一個問題。
本質上,我希望能夠收集來自R用戶的數據(或其他數據形式)的響應並附加到每個新用戶。
是否願意讓任何人都可以寫該表單?你可以通過使用'gs_key(...,lookup = FALSE)'來解決re:lookup上面的錯誤。但是,你的下一個更大的問題將以有針對性的方式給予寫入許可。 AFAIK你不能讓一張紙可寫,比如碰巧有一把鑰匙的人。我想知道這個包https://github.com/hadley/secure是否可以用來安全地向用戶提供OAuth2令牌? – jennybryan
@jennybryan我認爲我可以允許它是可寫的,但這並不理想 –
對我來說工作正常 - 我首先必須運行'gs_auth()',然後我在A7中添加了測試:'minresp2 < - gs_key ( 「1xemHzTdeqgMuGbsP6oqDYuMu4PymBdw7k7kMC_-Dsi8」); minresp2 < - minresp2%>%gs_edit_cells(input = c(「test」),anchor =「A7」,byrow = TRUE)' – jeremycg