Python Azure存储获取\u blob\u到\u流无法将保存的csv文件下载为流

Python Azure存储获取\u blob\u到\u流无法将保存的csv文件下载为流,python,pandas,io,azure-storage-blobs,Python,Pandas,Io,Azure Storage Blobs,我想将Azure存储中存储的CSV文件下载到一个流中,并直接用于我的python脚本中,但在Thomas的帮助下完成此操作后,我无法使用pandas read_CSV方法,错误消息是:pandas.io.common.EmptyDataError:没有要从文件解析的列,因此我假设下载的CSV流实际上是空的,但是在签入存储帐户后,CSV文件中的所有数据都很好,这里有什么问题?以下是Thomas的代码: from azure.storage.blob import BlockBlobService

我想将Azure存储中存储的CSV文件下载到一个流中,并直接用于我的python脚本中,但在Thomas的帮助下完成此操作后,我无法使用pandas read_CSV方法,错误消息是:pandas.io.common.EmptyDataError:没有要从文件解析的列,因此我假设下载的CSV流实际上是空的,但是在签入存储帐户后,CSV文件中的所有数据都很好,这里有什么问题?以下是Thomas的代码:

from azure.storage.blob import BlockBlobService
import io
from io import BytesIO, StringIO
import pandas as pd
from shutil import copyfileobj
with BytesIO() as input_blob:
     with BytesIO() as output_blob:
    block_blob_service = BlockBlobService(account_name='my account', account_key='mykey')

    block_blob_service.get_blob_to_stream('my counter', 'datatest1.csv', input_blob)

    df=pd.read_csv(input_blob)
    print(df)

    copyfileobj(input_blob, output_blob)

    #print(output_blob)

    # Create the a new blob
    block_blob_service.create_blob_from_stream('my counter', 'datatest2.csv', output_blob)
如果我不执行read_csv代码,create_blob_from_流将创建一个空文件,但是如果我执行read_csv代码,我得到错误:

pandas.parser.TextReader.cinit(pandas\parser.c:6171) pandas.io.common.EmptyDataError:没有要从文件中分析的列

the download file stored fine in the blob storage with all data in it. as showing below:

在花了这么多时间之后,我终于明白了

必须执行:

     input_blob.seek(0)
要在保存流后使用流以输入\u blob