gpt4 book ai didi

php - Google Drive - 如何列出指定文件夹中的所有文件

转载 作者:搜寻专家 更新时间:2023-10-31 21:07:16 24 4
gpt4 key购买 nike

嗨,我被困在这种情况下,我尝试了多种不同的方法,但我无法得到我想要的东西。

情况:我在谷歌驱动器上托管的文件夹中有大量文件。例如,一个用于报告的客户端文件夹有 2000-10000 个文件(这只会变得更大),我希望能够列出这些文件的标题、文件 ID 和父文件夹 ID,以便我可以创建到文件的直接链接.据我了解,我可以使用 google drive 来做到这一点:drive-api-client-php我已经设置了一个项目并拥有一个客户端 ID 和客户端密码,我已经下载了 subversion composer 和 google-api 以及 drive-api-client-php 并使用了 XAMPP

到目前为止我做了什么:我浏览了谷歌文档并观看了他们提供的教程视频。我试过 google sample他们在那里的网页上可用,这是我需要的开始。这将列出文件夹中的文件,其中包含 ID 和标题或您选择的任何字段 - 这里的两个问题是您无法指定您想要的结果的文件夹,并且结果的最大数量限制为 1000。我在需要 10,000 个。

我也看过一些谷歌应用程序脚本 here ,它似乎像 excel 中的 vba 一样用于提取文件 ID 和标题等,但这也仅限于最大结果数然后超时问题。这正是我想要的结果类型,没有任何限制。

我的问题是:在 google 驱动器的指定文件夹中列出 10,000 个带有标题的文件 ID 时,我有什么选择?从头到尾的过程是什么,因为我觉得我可能在早期遗漏了一个影响我结果可能性的基本点。我对此很灵活,我可以在提取数据后处理数据,首先获取数据对我来说是关键。期待您的回复,非常感谢。我希望这是足够清楚和有道理的。

最佳答案

在 Apps 脚本中尝试此代码:您需要编辑此代码,并替换您的文件夹 ID。在 Google Drive 中打开一个文件夹,在浏览器地址栏中,您会看到:

https://drive.google.com/drive/folders/Your_Folder_ID_Here

复制文件夹 ID,并在下面的代码中替换它。必须在 Apps 脚本内和您的开发者控制台上的两个位置明确启用高级 Google 服务。

//This requires the Drive API To be turned on in the Advanced Google Services
function listFilesInFolder() {
var query = 'trashed = false and ' +
"'Your Folder ID Here' in parents";

var filesInFolder, pageToken;

do {
filesInFolder = Drive.Files.list({
q: query,
maxResults: 100,
pageToken: pageToken
});
if (filesInFolder.items && filesInFolder.items.length > 0) {
for (var i = 0; i < filesInFolder.items.length; i++) {
var thisFile = filesInFolder.items[i];
//Logger.log('%s (ID: %s)', thisFile.title, thisFile.id);
//To Do - Output content to file
. . . . Code to output content . . . .
}
} else {
Logger.log('No files found.');
}
pageToken = filesInFolder.nextPageToken;
} while (pageToken);
}

如果您正在寻找用 PHP 编写的代码,则需要使用不同的东西。

关于php - Google Drive - 如何列出指定文件夹中的所有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30428074/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com