我有一个Python脚本试图在谷歌存储上传文件,但一直出现这个错误:
googleapiclient.errors.UnknownFileType:
这是我的代码:
def create_service():
credentials = GoogleCredentials.get_application_default()
return build('storage', 'v1', credentials=credentials)
service=create_service()
request=service.objects().insert(bucket='testBucket',name='test.raw',media_body=path_files+file_raw)
response=request.execute()
exit()
file_raw
是一个音频.raw文件。
我使用的图书馆是:
from oauth2client.client import GoogleCredentials
from googleapiclient.discovery import build
from google.cloud import storage
答案 0 :(得分:1)
我相信,因为你的文件以“.raw”结尾,所以“mimetypes”库无法猜测你想要的对象内容类型。尝试使用您希望GCS使用的MIME类型明确指定“media_mime_type”关键字参数。
这是我认为可能产生错误的地方:https://github.com/google/google-api-python-client/blob/master/googleapiclient/discovery.py#L789
另外,我建议你看一下Google Cloud Client Library for Python。我觉得使用起来更好。