如何生成含多Google Drive文件夹图片信息的Google Sheet表格?
批量提取Google Drive多文件夹图片信息到Google Sheet
步骤1:准备表格结构
- 新建一个Google Sheet,在第一行依次输入三列标题:
folder name、image name、shareable link to image
步骤2:编写Google Apps Script
- 在Sheet界面点击「扩展程序」→「Apps脚本」,打开脚本编辑器
- 清空默认的
Code.gs内容,粘贴以下代码:
function listDriveImages() { // 替换为你要遍历的Google Drive文件夹ID,可添加多个 const folderIds = ["文件夹ID1", "文件夹ID2", "文件夹ID3"]; const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); // 清空现有数据(保留标题行) sheet.getRange(2, 1, sheet.getLastRow()-1, 3).clearContent(); let row = 2; folderIds.forEach(folderId => { const folder = DriveApp.getFolderById(folderId); const folderName = folder.getName(); // 筛选文件夹内的图片文件(支持常见图片格式) const images = folder.getFilesByType(MimeType.JPEG) .concat(folder.getFilesByType(MimeType.PNG)) .concat(folder.getFilesByType(MimeType.GIF)) .concat(folder.getFilesByType(MimeType.BMP)); while (images.hasNext()) { const image = images.next(); // 设置文件为可共享(默认仅限有链接的人查看) image.setSharing(DriveApp.Access.ANYONE_WITH_LINK, DriveApp.Permission.VIEW); const shareableLink = image.getUrl(); // 写入表格数据 sheet.getRange(row, 1).setValue(folderName); sheet.getRange(row, 2).setValue(image.getName()); sheet.getRange(row, 3).setValue(shareableLink); row++; } }); }
- 修改代码中的
folderIds数组,把示例ID替换成你需要遍历的Drive文件夹ID(文件夹ID可从Drive文件夹的URL中获取)
步骤3:运行脚本并授权
- 在脚本编辑器点击运行按钮(▶️),首次运行会触发权限验证
- 按照提示完成授权:选择你的Google账号→点击「高级」→选择「转到[脚本名称]」→允许权限
步骤4:查看结果
- 脚本运行完成后,回到Google Sheet,即可看到多文件夹下的图片信息已自动填充到对应列中
注意事项
- 确保你对目标Drive文件夹拥有编辑权限,否则脚本无法读取文件
- 脚本默认设置图片链接为「任何人有链接即可查看」,若需调整权限,可修改代码中
setSharing的参数 - 若文件夹内有大量图片,运行时间可能较长,请耐心等待
内容的提问来源于stack exchange,提问作者Funkeh-Monkeh
相关产品推荐
相关产品推荐

