使用从 Google Drive package 查找文件/文件夹 action 的示例
- Updated: 2025/05/22
使用从 Google Drive package 查找文件/文件夹 action 的示例
构建一个 bot,用于在 Google Drive 中搜索文件,如果在指定路径中未找到该文件,则创建该文件。
先决条件
- 在 Google Cloud Platform 中设置 OAuth2 应用程序。 有关更多信息,请参阅 在 Google Cloud Platform 中设置 OAuth2。
- 此 bot 使用 Control Room OAuth 连接方法。 在 Control Room 中配置 OAuth 连接。 有关更多信息,请参阅 在 Control Room 中配置 OAuth 2.0 连接。
- 一个包含一些示例数据的 CSV 文件。 如果没有 CSV 文件,您可以从 下载此文件。
假设您想在 Google Drive 中创建一个 Google 工作表,如果它不存在的话。 在 Google Drive package 中,您可以使用 action 检查文件是否已存在于 Google Drive 中。 如果文件不存在,您可以使用 Google Sheets package 中的创建工作簿 action 来创建文件。
此 bot 检查 Google Drive 中是否存在 Google 工作表。 如果在指定路径中不存在,bot 会创建一个 Google 工作表并将数据从 CSV 文件复制到该工作表中。
过程
-
创建新 bot。
- 在左侧窗格中,单击自动化。
- 单击 。
- 在创建任务机器人窗口中,为 bot 输入一个名称:
- 接受默认文件夹位置:\Bots\
- 要更改默认的 bot 存储位置,请单击选择并按照提示操作。
- 单击创建和编辑。
-
打开包含您要复制到 Google 表格的数据的 CSV 文件。
- 在操作面板中,找到并添加 action 到 Bot editor。
- 在会话名称中,输入 csvsession。
- 在文件路径中,指定要从其中复制数据的 CSV 文件路径。
- 如果 CSV 表格有标题,选择包含标题。
- 根据 CSV 文件中使用的分隔符选择一个分隔符。
- 保存更改。
-
从 CSV 读取数据并将其存储在数据表变量中。
- 在操作面板中,找到并添加 action 到 Bot editor。
- 在会话名称中,输入 csvsession。
- 在将值分配给变量中,单击 (x) 并创建一个名为 TableFromCSV 的变量。
- 保存更改。
-
关闭 CSV 文件。
- 在操作面板中,找到并添加 action 到 Bot editor。
- 在会话名称中,输入 csvsession。
- 保存更改。
-
连接到 Google Drive。
- 在操作面板中,找到并添加 action 到 Bot editor。
- 在用户名中,选择不安全字符串,然后输入与您设置的 OAuth 连接相关联的电子邮件 ID。
- 在 OAuth2 身份验证模式 中,选择 Control Room 管理。
- 单击选择并选择您在 Control Room 中配置的连接。
- 保存更改。
-
连接到 Google Sheets。
- 在操作面板中,找到并添加 action 到 Bot editor。
- 在用户名中,选择不安全字符串,然后输入与您设置的 OAuth 连接相关联的电子邮件 ID。
- 在会话名称中输入 gsheetsession。
- 在 OAuth2 身份验证模式 中,选择 Control Room 管理。
- 单击选择并选择您在 Control Room 中配置的连接。
- 保存更改。
-
在 Google Drive 中创建新表格之前,请检查您要创建的文件是否已存在。 仅在指定路径中不存在该文件时创建文件。 要做到这一点,请使用 Try Catch actions。
- 在操作面板中,找到并添加 action 到 Bot editor。
- 保存更改。
-
要检查文件是否已存在,请使用 Google Drive 查找文件/文件夹 action。
- 在操作面板中,找到并添加 action 到 Try 块中。
- 在用户名中,选择不安全字符串并输入与 OAuth 连接关联的电子邮件 ID。
- 在找到中,单击文件。
- 在源文件夹路径中,输入源文件夹。 例如,在此示例场景中,机器人在 aa-docs/spreadsheets 路径中查找文件。
- 在匹配类型中,选择完全匹配。
- 在文件或文件夹名称中,输入 contacts。
- 在返回文件或文件夹列表中,选择字典。
- 单击 (x),并创建一个名为 FileFolderDictionary 的字典变量,子类型为 Any。
- 保存更改。
-
如果文件不存在,请创建该文件。
- 在操作面板中,找到并添加 action 到 Catch 块中。
- 在用户名中,选择不安全字符串并输入与 OAuth 连接关联的电子邮件 ID。
- 在会话名称中,输入 gsheetsession。
- 在工作簿名称中,输入 contacts。
- 在文件路径中,单击从我的共享位置,然后输入父级文件夹路径。 例如,在本示例场景中,bot 会在 aa-docs/spreadsheets 路径中搜索文件。
- 保存更改。
-
要从 Google Drive 打开电子表格,您需要其文件 ID 或文件路径。 由于此 bot 动态创建文件,因此在 bot 执行之前,您将无法获得该文件路径。 不过,您可以再次使用 Google Drive 查找文件/文件夹 action 来获取文件 ID。
-
解析与 File1 键关联的 JSON 字符串。
- 在操作面板中,找到并添加 action。
- 在数据源中,选择文本并输入 $FileFolderDictionary{File1}$。
- 在JSON 对象会话中,单击本地会话,然后输入 jsonsession。
- 保存更改。
-
从 JSON 对象中检索文件 ID。
- 在操作面板中,找到并添加 。
- 在 JSON 节点键或路径中,输入 fileId。
- 在会话名称中,输入 jsonsession。
- 在将结果保存到变量中,单击 (x) 并创建一个名为 FileId 的变量。
- 保存更改。
-
结束 JSON 会话。
- 在操作面板中,找到并添加 action。
- 在会话名称中,输入 jsonsession。
- 保存更改。
-
使用检索到的文件 ID,打开在 Google Drive 中创建的电子表格。
- 从操作面板中,找到并添加 action。
- 在用户名中,选择不安全字符串并输入与 OAuth 连接关联的电子邮件 ID。
- 在会话名称中,输入 gsheetsession。
- 在打开工作表中,单击从电子表格 ID 并输入 $FileId$。
- 保存更改。
-
将数据表变量写入 Google 工作表。
- 在操作面板中,找到并添加 action。
- 在会话名称中,输入 gsheetsession。
- 在工作表选项中,单击特定工作表,然后在工作表名称中输入Sheet1或目标电子表格中的工作表名称。
- 在输入数据表变量中,选择 TableFromCSV。
- 在开始单元格值中,输入 A1。
- 保存更改。
-
断开 Google Drive 和 Google Sheets 的连接。
- 在操作面板中,找到并添加 action。
- 在用户名中,选择不安全字符串并输入与 OAuth 连接关联的电子邮件 ID。
- 保存更改。
- 在操作面板中,找到并添加 action。
- 在用户名中,选择不安全字符串并输入与 OAuth 连接关联的电子邮件 ID。
- 在会话名称中,输入 gsheetsession。
- 保存更改。
- 运行 bot。