我一直在使用Google云端硬盘的功能一段时间了,但我偶然发现了一个非常棘手的问题。
众所周知,您可以通过按住Shift键+选择文件,然后右键单击并选择“共享”和“获取链接”,从Google云端硬盘中的多个文件中获取多个共享链接
然而问题是,我得到的链接是完全随机的顺序!,我一直在检查它们是按日期或文件名或访问时间排序,但我无法弄清楚看似随意的订单背后的任何推理。
这非常令人讨厌,因为我尝试使用Google云端硬盘作为Google相册的替代方案,无需手动获取每张图片的链接即可直接链接到多张图片。
有没有办法通过实际文件顺序在Google云端硬盘中获取多个链接?(例如按文件名排序)
答案 0 :(得分:1)
Google广告网络API请求没有排序选项。检索完整请求后,您需要在本地对信息进行排序。
注意:这不是我第一次看到这个问题的想法是发送功能请求。 Google Drive Issue Forum如果您决定这样做,请确保您明确说明您想要的内容以及您认为应该添加内容的原因。我倾向于以这种方式获得更好的结果
答案 1 :(得分:1)
我发现了一种“不是”的解决方案,虽然不是很简单,但我想总比没有好。
首先,您需要安装JDownloader,这是一个小型的下载管理器程序(当您下载较大的Google云端硬盘文件且互联网非常缓慢以至于无法在一个会话中完成它时,该程序非常有用),然后....
我知道这是一个非常麻烦的过程,但是我确实找不到更好的解决方案,仍然愿意寻求更好的解决方案!
答案 2 :(得分:0)
我的解决方案是创建一个电子表格 Appscript。
function linksBulk() {
var ss=SpreadsheetApp.getActiveSpreadsheet();
var s=ss.getActiveSheet();
var c=s.getActiveCell();
var fldr=DriveApp.getFolderById("PUT YOUR ID FOLDER HERE PLS");
var files=fldr.getFiles();
var names=[],f,str;
while (files.hasNext()) {
f=files.next();
str='=hyperlink("' + f.getUrl() + '","' + f.getName() + '")';
names.push([str]);
}
s.getRange(c.getRow(),c.getColumn(),names.length).setFormulas(names);
}
function linkURL(reference) {
var sheet = SpreadsheetApp.getActiveSheet();
var formula = SpreadsheetApp.getActiveRange().getFormula();
var args = formula.match(/=\w+\((.*)\)/i);
try {
var range = sheet.getRange(args[1]);
}
catch(e) {
throw new Error(args[1] + ' is not a valid range');
}
var formulas = range.getFormulas();
var output = [];
for (var i = 0; i < formulas.length; i++) {
var row = [];
for (var j = 0; j < formulas[0].length; j++) {
var url = formulas[i][j].match(/=hyperlink\("([^"]+)"/i);
row.push(url ? url[1] : '');
}
output.push(row);
}
return output
}
答案 3 :(得分:-1)
我找到了解决方案。 1)为Google云端硬盘安装应用-“与Google云端硬盘批量共享URL缩短器” 2)根据需要订购文件 3)选择复制共享链接所需的所有文件 4)右键单击所选区域 5)打开方式:-批量共享网址。
在新窗口中,您将看到按设置顺序的链接列表。