将.pdf和.doc文件从URL列表直接上传到Google Drive



我有一个谷歌表单,里面有文件的URL列表——大约有900个条目,可能95%的PDF都有几个.docs和.docxs。

我想把每个文件上传到谷歌硬盘文件夹——最好是我雇主工作区内的共享文件夹——保留文件名,我也在表格中。

我在这里找到了一些接近的答案,但它们使用了不推荐使用的谷歌脚本方法。

例如:

var urlOfThePdf = 'http://www.fostexinternational.com/docs/tech_support/pdfs/280_owners_manual.pdf';// an example of online pdf file
var folderName = 'GAS';// an example of folder name
function saveInDriveFolder(){
var folder = DocsList.getFolder(folderName);// get the folde
var file = UrlFetchApp.fetch(urlOfThePdf); // get the file content as blob 
folder.createFile(file);//create the file directly in the folder
}

在getFileFromURL处失败。

如有任何建议,不胜感激。

这段代码将把pdf保存到所需的文件夹中:

var urlOfThePdf = '';// an example of online pdf file
var folderName = '';// an example of folder name
function saveInDriveFolder(){
var folders = DriveApp.getFoldersByName(folderName);
var file = UrlFetchApp.fetch(urlOfThePdf);
while (folders.hasNext()) {
var folder = folders.next();
folder.createFile(file);
}
}

它使用DriveApp.getFoldersByName()方法获取具有该名称的所有文件夹,UrlFetchApp.fetch()方法获取pdf,folder.createFile()方法将pdf保存在文件夹中。

请注意,DriveApp.getFoldersByName()获取一个文件夹迭代器(驱动器中所有具有该名称的文件夹(。在这段代码中,我将遍历所有具有该名称的文件夹,并将pdf保存在所有文件夹中

我建议使用Drive.getFolderById()并提供所需文件夹的id(可以从url中提取(。使用此方法,您将只将pdf保存在一个文件夹中,并且不必遍历代码中的文件夹(整个while循环可以替换为:folder.createFile(file);(。

最新更新