我有两份文件示例.csv以及示例.xlsx,所有这些文件都存储在blobstore中blobReader = blobstore.BlobReader(blob_key)
inputFile = BlobIterator(blobReader)
if inputFile is None:
values = None
else:
try:
stringReader = csv.reader(inputFile)
data = []
columnHeaders = []
for rowIndex, row in enumerate(stringReader):
if(rowIndex == 0):
columnHeaders = row
else:
data.append(row)
values = {'columnHeaders' : columnHeaders, 'data' : data}
except:
values = None
self.response.write(values)
a的上述代码的输出示例.csv文件是
^{pr2}$
使用xlrd包,我可以读取excel文件的内容,但在这一点上,我必须指定确切的文件位置book = xlrd.open_workbook('D:/sample.xlsx')
first_sheet = book.sheet_by_index(0)
self.response.write(first_sheet.row_values(0))
cell = first_sheet.cell(0,0)
self.response.write(cell.value)
有没有办法从blobstore读取excel文件的内容,我用下面的代码尝试过blobReader = blobstore.BlobReader(blobKey)
uploadedFile = BlobIterator(blobReader)
book = xlrd.open_workbook(file_contents=uploadedFile)
(or)
book = xlrd.open_workbook(file_contents=blobReader)
但它抛出一些错误TypeError:“BlobReader”对象没有属性“getitem”。在
有什么想法吗?谢谢。。在