Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google drive api 如何在谷歌驱动器文件夹中获取图像的URL?_Google Drive Api - Fatal编程技术网

Google drive api 如何在谷歌驱动器文件夹中获取图像的URL?

Google drive api 如何在谷歌驱动器文件夹中获取图像的URL?,google-drive-api,Google Drive Api,假设我在google drive文件夹中有200个图像,有没有办法直接获取每个图像的URL?是的,如果它们是公开共享的 您可以在驱动器中查看任何文件的链接,右键单击并单击“获取链接”或单击文件并单击链接图标 也可以使用sdk访问此链接。如果您喜欢使用Google脚本,这里有一个脚本可以列出您的文件和URL。这将深入几层,并在放置此文件的父文件夹中查找所有文件 若要使用,请创建新的电子表格并添加此脚本。ListFileInfolder是您想要运行的函数。如果代码给了你太多的信息,就删减它 *这确实

假设我在google drive文件夹中有200个图像,有没有办法直接获取每个图像的URL?

是的,如果它们是公开共享的

您可以在驱动器中查看任何文件的链接,右键单击并单击“获取链接”或单击文件并单击链接图标


也可以使用sdk访问此链接。

如果您喜欢使用Google脚本,这里有一个脚本可以列出您的文件和URL。这将深入几层,并在放置此文件的父文件夹中查找所有文件

若要使用,请创建新的电子表格并添加此脚本。ListFileInfolder是您想要运行的函数。如果代码给了你太多的信息,就删减它

*这确实使用了不推荐使用的代码,但如果您一次性使用,那么这就是您的问题

function getParentFolder() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var SSID=ss.getId();

  var fileInDrive = DriveApp.getFolderById(SSID);
  var folderinDrive = fileInDrive.getParents().next().getName();

  return folderinDrive;
}

function listFilesInFolder() {
  var parentFolder = getParentFolder();
  Logger.log("Parent: " + parentFolder);
  var folder = DocsList.getFolder(parentFolder);
  var parentFiles = folder.getFiles();
  var folders = folder.getFolders();

  var file;
  var allFolders;
  var subFileList;
  var data;

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet;
  sheet.clear();

  sheet.appendRow(["Name", "Date Created", "URL", "Type", "Last Updated", "Parent Folder"]);

  // Every file in the folder containing this file.
  for (var i = 0; i < parentFiles.length; i++) {
    file = parentFiles[i];

    var parentName = "";
    try {
      var parentName = file.getParents()[0].getName();
    } catch(err) {}   

    data = [ 
      file.getName(),
      file.getDateCreated(),
      file.getUrl(),
      file.getFileType(),
      file.getLastUpdated(),
      parentFolder
    ];

    sheet.appendRow(data);
  } 
  // Every subfolder in the folder containing this file.
  for (var i = 0; i < folders.length; i++) {
    allFolders = folders[i];
    var parentName = "";
    try {
      var parentName = allFolders.getParents()[0].getName();
    } catch(err) {}    
    data = [ 
      allFolders.getName(),
      allFolders.getDateCreated(),
      allFolders.getUrl(),
      "folder",
      allFolders.getLastUpdated(),
      parentName
    ];

    sheet.appendRow(data);
  }


  for (var i = 0; i < folders.length; i++) {
    allFolders = folders[i];
    var subFiles = allFolders.getFiles();

    for (var j = 0; j < 100; j++) {
      subFileList = subFiles[j];
      try {
        data = [ 
          subFileList.getName(),
          subFileList.getDateCreated(),
          subFileList.getUrl(),
          subFileList.getFileType(),
          subFileList.getLastUpdated(),
          subFileList.getParents()[0].getName()
        ];

        sheet.appendRow(data);
      } catch(err) {

      }
    }
  }
};
函数getParentFolder(){ var ss=SpreadsheetApp.getActiveSpreadsheet(); var SSID=ss.getId(); var fileInDrive=DriveApp.getFolderById(SSID); var folderinDrive=fileInDrive.getParents().next().getName(); 回归民俗; } 函数ListFileInfolder(){ var parentFolder=getParentFolder(); Logger.log(“父项:+parentFolder”); var folder=DocsList.getFolder(parentFolder); var parentFiles=folder.getFiles(); var folders=folder.getFolders(); var文件; var所有文件夹; var子文件列表; var数据; var ss=SpreadsheetApp.getActiveSpreadsheet(); var sheet=ss.getActiveSheet; sheet.clear(); sheet.appendRow([“名称”、“创建日期”、“URL”、“类型”、“上次更新”、“父文件夹”]); //文件夹中包含此文件的每个文件。 对于(var i=0;i