使用Python使用csv日志更新excel文件(xlsx)

时间:2015-02-10 21:34:11

标签: python csv export-to-excel

我以csv格式获取每日日志,并且当前在excel中打开它们并将其复制/粘贴到我的主excel文件中。我想创建一个Python脚本,它可以读取新的csv文件并写入特定工作表上的主excel文件,并从特定单元格开始(从最后一天的数据开始的一列)书面)。或者,如果将csv文件首先保存为excel文件然后将其写入主excel文件更容易,那也可以。

编辑 - 我最终做到了这一点(它可能非常丑陋,但它现在有效):

from xlrd import open_workbook
from xlutils.copy import copy

def add_data(master_file, csv_file):    

    rb = open_workbook((master_file), formatting_info=True, on_demand=True)
    sheet_name = csv_file[:-4]
    total_sheets = len(rb.sheet_names())
    wb = copy(rb)
    wb.add_sheet(sheet_name)

    row = 0
    with open(csv_file, 'rb') as csv:
        reader = csv.readlines()
        for line in range(len(reader)):
            new = reader[line].split(',')
            for i in range(len(new)):
                if new[i] == '\n':
                    row += 1
                elif new[i][-1] == '\n':
                    new[i] = new[i][:-1]
                    wb.get_sheet(total_sheets).write(row,i,new[i])
                    row += 1
                else:
                    wb.get_sheet(total_sheets).write(row,i,new[i])

    wb.save('new_'+master_file)
    print sheet_name + " added successfully..."

0 个答案:

没有答案