如何在Google Apps Script新方法中将文件列表的ID列替换为文件URL
实现思路与修改方案
Google Drive的文件URL有固定构造规则,无需额外调用API,直接用文件ID就能生成,标准格式为:https://drive.google.com/file/d/{文件ID}/view
针对你的代码,仅需两处修改即可实现需求:
- 将表头的
'id'替换为'文件URL' - 在生成表格行数据时,把
f.id替换为拼接好的URL字符串
修改后的完整代码如下:
function myFunction() { var mask = '.jpg'; var folder_id = '###'; // 替换为你的文件夹ID var query = `title contains "${mask}" and trashed = false and "${folder_id}" in parents`; var findings = Drive.Files.list({ q: query }) || []; // 调整表头与URL生成逻辑 var table = [['name', '文件URL'], ...findings.items.map(f => [f.title, `https://drive.google.com/file/d/${f.id}/view`]).sort()]; SpreadsheetApp.getActiveSheet().clear().getRange(1,1,table.length,2).setValues(table); }
补充说明:
- 若需要直接下载链接,可使用格式:
https://drive.google.com/uc?export=download&id={文件ID} - 当前代码基于Drive API v2,
f.title对应文件名是正确的;若后续升级到v3 API,需将f.title改为f.name
内容的提问来源于stack exchange,提问作者Greg Clinton
相关产品推荐
相关产品推荐

