使用Python将CSV文件上传到Google Cloud Storage

use*_*888 -1 python google-cloud-storage google-bigquery

我需要使用Python自动将本地csv文件上传到Google Cloud存储桶。我可以使用哪个Python库?任何示例代码将不胜感激。

use*_*888 5

我们可以使用Google python客户端api将文件上传到Google云存储。

首先,如下安装api客户端。

>pip install --upgrade google-api-python-client
Run Code Online (Sandbox Code Playgroud)

然后,启用api身份验证以获取应用程序默认凭据。

>gcloud beta auth application-default login
Run Code Online (Sandbox Code Playgroud)

以下是使用应用程序默认凭据将本地文件上传到Google云存储的示例代码。

from googleapiclient import discovery
from oauth2client.client import GoogleCredentials

credentials = GoogleCredentials.get_application_default()
service = discovery.build('storage', 'v1', credentials=credentials)

filename = 'C:\\MyFiles\\sample.csv'
bucket = 'my_bucket'

body = {'name': 'dest_file_name.csv'}
req = service.objects().insert(bucket=bucket, body=body, media_body=filename)
resp = req.execute()
Run Code Online (Sandbox Code Playgroud)

这会将文件上传到my_bucket中。上传文件的完整Google存储URL为gs://my_bucket/dest_file_name.csv