使用API​​将通用二进制文件上传到GDrive

时间:2018-11-01 09:12:13

标签: python google-drive-api

我想使用Python 3.6和Google Drive API v3将通用二进制文件(特定的.root文件,CERN的ROOT输出)上传到Google Drive。如果我尝试通常的代码:

FILES = ((filename, None) for filename in filelist)
for filename, mimeType in FILES:
    metadata = {'name': filename}
    if mimeType:
        metadata['mimeType'] = mimeType
    res = DRIVE.files().create(
        body = metadata, media_body = filename).execute()

我收到以下错误:

raise UnknownFileType(media_filename)
googleapiclient.errors.UnknownFileType

我想这取决于GDrive不知道根文件的事实。尽管如此,是否有任何方法可以上传它们(或其他任何“自定义”二进制文件)?

1 个答案:

答案 0 :(得分:1)

我在Google驱动器中知道的最广泛的文件扩展名mime类型列表可以在这里找到。 MimeType.cs

我认为您将无法仅编写自己的文件扩展名和mime类型,然后上传它。它必须是列表中的一个,否则Google驱动器不知道如何处理它。

您是否考虑过仅压缩文件然后使用

  

{“。zip”,“应用程序/ x-zip压缩”},