Ошибка BlobServiceClient.from_connection_string(connect_str)

#python #azure #blob

Вопрос:

Я пытаюсь загрузить файл JSON в новый контейнер в учетной записи хранилища больших двоичных объектов Azure. Я использую краткое руководство Microsoft В настоящее время мой код выглядит следующим образом:

 >import os, uuid
>from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient
>connect_str = os.getenv('AZURE_STORAGE_CONNECTION_STRING')

So far It's works OK but when I add this line
>blob_service_client = BlobServiceClient.from_connection_string(connect_str)
 

Я получаю сообщение об ошибке:

 >(base) "`my file path`"
Traceback (most recent call last):
  File "`my file path`", line 14, in <module>
    blob_service_client = BlobServiceClient.from_connection_string(connect_str)
  File `".../anaconda3/lib/python3.8/site-packages/azure/storage/blob/_blob_service_client.py"`, line 174, in from_connection_string
    account_url, secondary, credential = parse_connection_str(conn_str, credential, 'blob')
  File `".../anaconda3/lib/python3.8/site-packages/azure/storage/blob/_shared/base_client.py"`, line 363, in parse_connection_str
    conn_str = conn_str.rstrip(";")
AttributeError: 'NoneType' object has no attribute 'rstrip'
 

Я написал тот же код на своем компьютере и около месяца назад перешел на Mac OS. Я думал, что сделал все необходимые корректировки, но, по-видимому, нет.
Поскольку этот mac совершенно новый, я думаю, что мне не хватает нескольких пакетов или, возможно, у меня неправильные версии пакетов.

Я прилагаю список пунктов:

azure-распространенный 1.1.27

azure-ядро 1.12.0

azure-nspkg 3.0.2

azure-хранилище 0.36.0

azure-хранилище-большой двоичный объект 12.9.0

Спасибо!

Ответ №1:

Ваша переменная окружения, вероятно, не найдена. Попробуйте этот код

 connect_str = os.environ['AZURE_STORAGE_CONNECTION_STRING']
 

Он должен поднять KeyError или вернуться None .
Я думаю, вы должны быть уверены, что переменная действительно прочитана или что ее значение не None является таковым .

Комментарии:

1. Я думаю, что он вернул none: поднять ошибку ключа(ключ) из None Ошибка ключа: ‘AZURE_STORAGE_CONNECTION_STRING’