使用Google Drive API创建文件夹:资源没有方法“插入”

时间:2016-01-31 12:30:13

标签: python google-drive-api

我想使用Python API在google驱动器上创建一个文件夹。 这是功能:

def create_folder(file_path, parentId=None):
    body = {
    'name': os.path.basename(file_path),
    'mimeType': "application/vnd.google-apps.folder"
    }
    if parentId:
        body['parents'] = parentId

    results = service.files().insert(body=body).execute()
    return results

但它给出了错误:

AttributeError: 'Resource' object has no attribute 'insert'

我认为它可以像getlist方法一样工作 - https://developers.google.com/drive/v2/reference/files#methods

我在这里找到答案: How can I create a new folder with Google Drive API in Python?

我错过了什么?

2 个答案:

答案 0 :(得分:5)

您遇到' 资源对象没有属性插入'因为您使用的是Google Drive API v3。 ' files.insert' 方法仅适用于Drive API v2。您可以使用' files.create '而不是' files.insert '。

有关详情,请点击以下链接:https://developers.google.com/drive/v3/web/migration

答案 1 :(得分:0)

似乎有两个问题:

  • 当我执行您的代码时,会创建一个文件夹并且没有错误 信息。也许你可以在初始化的地方发布代码 “服务”变量。如果驱动器的东西不大可能 初始化,可能会失败。
  • 要创建具有特定名称的文件夹,请使用“title”而不是“name”。使用名称也可以,但文件夹将显示为“新建文件夹”