![](/img/trans.png)
[英]How to read a currency symbol from an xlsx file in python using openpyxl?
[英]how to read a xlsx stream file using openpyxl
我正在嘗試讀取流式 xlsx 文件。 用戶通過用戶界面輸入數據,然后數據通過 xlsx 中的流傳遞給我。 我怎么讀? 我找不到任何文檔。
貓文本.xlsx | 蟒蛇我的程序.py
我如何閱讀這個流? 任何幫助將不勝感激。 我不確定 openpyxl 是否允許讀取。 我正在使用 python3
openpyxl.load_workbook
的第一個參數filename
不僅可以是文件名,還可以是類文件對象,而sys.stdin
是表示程序標准輸入的類文件對象。
不過,您需要在二進制模式下使用它,請參閱有關二進制標准流的文檔中的注釋。
import sys
from openpyxl import load_workbook
wb = load_workbook(sys.stdin.buffer)
print(wb.sheetnames)
運行:
$ cat test.xlsx | python test.py
['Sheet1', 'Sheet2']
我沒有足夠的代表發表評論,因此我將其發布為答案。
正如@CheradenineZK 所提到的,如果輸入來自(Azure)blob 存儲,則需要將其包裝在字節緩沖區中。 我一直在努力弄清楚如何做到這一點......
import io
import openpyxl
bytes_in = io.BytesIO(myblob.read())
wb = openpyxl.load_workbook(bytes_in)
正在為我做伎倆。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.