我可以从Google Apps脚本生成的URL链接下载文件吗

mul*_*_ru 5 google-apps google-sheets google-apps-script

请帮助我在短时间内学习google-apps-script。我想通过从电子表格中存储的数据生成的url从远程站点下载文件。

例如,我有2个参数:

Cell1 = val1, val2, ... valN
Cell2 = val21, val22, ...  val2N
Run Code Online (Sandbox Code Playgroud)

我将字符串从单元格数据拆分为数组,然后生成URL。例如:http://mysite.com/files/file.val1.val22.zip 比我需要从此链接下载文件...

我可以自动执行此过程吗?

Mog*_*dad 6

此示例函数将检索您的 zip 文件,并将其放入您的 Google Drive 文件夹“StackOverflow”中。您还可以从这个 gist下载更完整的版本。

function getFile(fileURL) {
  // see https://developers.google.com/apps-script/class_urlfetchapp
  var response = UrlFetchApp.fetch(fileURL);
  var fileBlob = response.getBlob()
  var folder = DocsList.getFolder('StackOverflow');
  var result = folder.createFile(fileBlob);
  debugger;  // Stop to observe if in debugger
}
Run Code Online (Sandbox Code Playgroud)

例如:

getFile( "http://mysite.com/files/file.val1.val22.zip" );
Run Code Online (Sandbox Code Playgroud)

请注意,您本身无法下载,因为您无法从应用程序脚本访问 PC 的资源(例如文件系统)。该文件仍在“云”中……在这种情况下,它已从其所在的网站复制到 Google 云端硬盘中。但是,如果您正在运行 Drive 应用程序,该文件现在将同步到您的 PC。