我需要定期將kafka使用者的輸出轉儲到excel文件中。我使用下面的代碼:將kafka(kafka-python)轉儲到txt文件
from kafka import KafkaConsumer
from kafka import KafkaProducer
import json,time
from xlutils.copy import copy
from xlrd import open_workbook
import pandas
consumer = KafkaConsumer(bootstrap_servers='localhost:9092')
KafkaConsumer()
consumer.subscribe("test")
rowx=0
colx=0
for msg in consumer:
book_ro = open_workbook("twitter.xls")
book = copy(book_ro) # creates a writeable copy
sheet1 = book.get_sheet(0) # get a first sheet
sheet1.write(rowx,colx, msg[6])
book.save("twitter.xls")
現在,我的問題是代碼效率不高。對於我需要打開,寫入並保存excel文件的每條消息。有沒有辦法打開一次,寫入,然後關閉它(對於一批消息,而不是for循環)? tnx
爲什麼關閉文件呢? –