我是一名老师,正在开始使用Google课堂。 几个星期以来,我扫描了学生的作业,因此我更正了试卷,并且得到了pdf文件以及每个学生的更正视频。 使用python,我可以很容易地收集和组织所有这些步骤。 现在,我在google驱动器上以我的学生的名字命名的所有文件。我想与他们分别分享。 我在Internet上阅读了很多文章以找到解决方案,但似乎以前没有人做过。已经有些东西看起来像我想要的东西,但是我不能出于我的目的使用它(AutoCrat)。 我确信我可以用每个文档的文件地址,每个学生的电子邮件地址做一个Google工作表,并运行一个脚本与合适的学生共享文档。 我对python有一些基础知识,但我不知道google脚本。 有人可以帮我得到我想要的吗? 谢谢,贝诺特。
答案 0 :(得分:0)
我已经取得了一些进步。
最后,我用python编写了一个脚本,为文件指定了正确的名称。
然后,我将文件放在名为“ dm3_1ereS”的文件夹中,并编写了一个链接到Google工作表的脚本,其中包含有关学生的一些信息。下面是我写的脚本。
活动工作表有几列。
第一个包含用于了解学生是否在此的信息(第二个是他的名字,第三个是他的姓氏,最后一个是他的电子邮件)。
在最后一个学生所在行的第一个单元格中,我输入了字符串“ fin”以确保while循环将停止。
getFolderID(dossier)返回文件的ID。
脚本的想法是,当我不检查所有学生时,我检查他是否完成了作业。在这种情况下,我将使用他的名字查看“ dm3_1ereS”中他的文件,并与他共享并向他发送通知。然后,我带下一个学生做同样的事情。
function partage_notification() {
var dossier = "dm3_1ereS";
var dossier_id = getFolderID(dossier);
var app = SpreadsheetApp ;
var classeur = app.getActiveSpreadsheet();
var feuille = app.getActiveSheet();
var row = 2;
var col = 1;
var folder = DriveApp.getFolderById(dossier_id);
var cellule = feuille.getRange(row,col).getValue();
while (cellule != "fin") {
if (cellule == "") {
var nom = feuille.getRange(row,col+1).getValue();
var copie = folder.searchFiles("title contains '" + nom + "'").next();
var mel = feuille.getRange(row,col+3).getValue();
copie.addViewer(mel);
}
var row = row + 1;
var cellule = feuille.getRange(row,col).getValue();
}
}
我不明白为什么,但是我的脚本似乎并不能提供相同的结果。我做了很多试验,但无法解决。
您能看看一下吗,请帮助我。
问候,贝诺。
PS:我希望我的英语对理解我不会有问题。