You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Google Drive的DriveApp将视频缩略图导入Google表格

嘿,我来帮你搞定把Google Drive里的视频缩略图导入到Google表格的需求!

实现Google Drive视频缩略图导入Google表格

首先有个关键前提:你需要先启用Google Drive API——在脚本编辑器里,点击「资源」→「高级Google服务」,找到Drive API并开启,然后保存设置。

接下来是完整的可运行代码,替换你原来的myFiles函数,同时添加获取缩略图的辅助函数:

function myFiles() {
  var ss = SpreadsheetApp.getActive();
  var sh = ss.getSheetByName('MyImages');
  // 可选:清空表格现有内容,避免重复数据
  sh.clearContents();
  // 写入表头
  sh.appendRow(['序号', '文件名', '文件类型', '文件链接', '缩略图']);
  
  var files = DriveApp.getFiles();
  var cnt = 1;
  
  while(files.hasNext()) {
    var fi = files.next();
    var type = fi.getMimeType();
    
    // 筛选常见的视频MIME类型,可根据需求增减
    var videoMimeTypes = [
      MimeType.VIDEO_MP4,
      MimeType.VIDEO_MPEG,
      MimeType.VIDEO_QUICKTIME,
      MimeType.VIDEO_WEBM,
      MimeType.VIDEO_AVI
    ];
    
    if(videoMimeTypes.includes(type)) {
      var thumbnailUrl = getVideoThumbnail(fi.getId());
      // 插入数据行:序号、文件名、类型、文件链接、缩略图公式
      sh.appendRow([
        cnt++,
        fi.getName(),
        type,
        fi.getUrl(),
        thumbnailUrl ? `=IMAGE("${thumbnailUrl}")` : '无缩略图'
      ]);
    }
  }
}

// 辅助函数:通过Drive API获取视频缩略图链接
function getVideoThumbnail(fileId) {
  try {
    // 调用Drive API获取文件的缩略图字段
    var file = Drive.Files.get(fileId, {fields: 'thumbnailLink'});
    return file.thumbnailLink;
  } catch(e) {
    console.log('获取缩略图失败:' + e.message);
    return null;
  }
}

代码细节说明

  • Drive API的作用:DriveApp原生没有直接返回视频缩略图的方法,必须借助Drive API的Files.get接口才能拿到thumbnailLink(缩略图链接)。
  • 视频类型筛选:我列出了主流的视频格式,你可以根据自己的文件类型添加或删除对应的MIME类型。
  • 容错处理:如果某些视频没有生成缩略图(比如旧格式或损坏文件),表格会显示「无缩略图」,避免公式报错。
  • 表头与清空逻辑:添加了表头让表格更清晰,清空内容的代码是可选的,如果你想保留历史数据可以删除sh.clearContents()。

额外提示

如果想同时保留图片和视频的缩略图,只需要把原来的图片MIME类型(GIF/JPEG/PNG)和视频MIME类型合并到判断条件里即可。

内容的提问来源于stack exchange,提问作者Paul Mark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 08:16:55