Поскольку вы уже используете Python, было бы намного проще написать большой двоичный объект из Python с помощью официального клиента хранилища BLOB-объектов Azure.
После установки клиента (например, pip install azure-storage-blob
)что-то вроде этого должно сделать (сухое кодирование, YMMV):
import io
import datetime
from azure.storage.blob import BlockBlobService
my_data = '''
Thu Apr 4 11:57:51 2019
21 mA
229867 mV
0 mW
556 Wh
'''
# Will generate something like 'stats-20190404-110930'
filename = 'stats-%s' % datetime.datetime.utcnow().strftime('%Y%m%d-%H%M%S')
# Grab a reference to the block blob storage service
block_blob_service = BlockBlobService(
account_name='azure-storage-account-name',
sas_token='access-token-from-azure-access-keys-page',
)
# Upload directly from the text you have
block_blob_service.create_blob_from_text(
container_name='azure-storage-container-name',
blob_name=filename,
text=my_data,
)
Было бы намного лучше сохранить данные в структурированном формате, таком как JSON, поэтому вам не нужно анализировать этопользовательский текстовый формат где угодно, и используйте стандарт ISO8601 для даты:
import json
import datetime
data = {
'date': datetime.datetime.utcnow().isoformat(),
'voltage_mv': 229867,
'current_ma': 21,
'power_mw': 0,
'energy_wh': 556,
}
my_data = json.dumps(data) # encode into JSON
# (the same upload dance as before)