Я пытаюсь прочитать файл в корзине Google Cloud Storage с кодом Python, но получаю сообщение об ошибке - PullRequest
0 голосов
/ 29 апреля 2019

Я пытаюсь прочитать файл, хранящийся в Python корзины Google Cloud Storage:

textfile = open("${gcs_bucket}mdm/OFF-B/test.txt", 'r') 
times = textfile.read().splitlines() 
textfile.close() 
print(getcwd()) 
print(times)

Файл находится в этом месте, но я получаю следующую ошибку:

File "/var/cache/tomcat/temp/interpreter-9196592956267519250.tmp", line 3, in <module>
  textfile = open("gs://tp-bi-datalake-mft-landing-dev/mdm/OFF-B/test.txt", 'r')
IOError: [Errno 2] No such file or directory: 'gs://tp-bi-datalake-mft-landing-dev/mdm/OFF-B/test.txt'

1 Ответ

1 голос
/ 29 апреля 2019

Это потому, что вы пытаетесь прочитать его как локальный файл.

Для чтения из облачного хранилища вам необходимо импортировать библиотеку и использовать клиент.

Проверьте этот аналог Stackoverflow Вопрос .

В вашем случае это будет что-то вроде:

from google.cloud import storage

# Instantiates a client
client = storage.Client()

bucket_name = 'tp-bi-datalake-mft-landing-dev'

bucket = client.get_bucket(bucket_name)

blob = bucket.get_blob('mdm/OFF-B/test.txt')

downloaded_blob = blob.download_as_string()

print(downloaded_blob)

Также вам нужно будет установить библиотеку , вы можете сделать это простозапустив:

pip install google-cloud-storage перед запуском кода.

Также здесь вы можете найти еще Примеры Python для облачного хранилища Google .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...